关于QPainter绘图
实在想不出怎么写了,我是新手,在写一个坦克游戏,在绘制方面不会了,
大致结构是这样,class tank : public QWidget, class Btank:public tank,
class Gtank:public tank,
class Widget : public QWidget (此为主窗口)此类的构造函数中包含:
Gtank *u= new Gtank(this);
Btank *i= new Btank(this);
就是想把这两种坦克都画在Widget里,相关函数如下:
void tank::paintEvent(QPaintEvent *)
{
QPainter painter(this);
painter.drawPixmap(QPoint(0,0),*pix);
}
void Btank::draw()
{
if(alive==true)
{
pix=new QPixmap(800,600);
pix->fill(Qt::blue);
QPainter painter(pix);
image.load("image/down.png");
painter.drawImage(QPoint(X,Y),image); //---此处X,Y都是0,构造函数中赋值了
}
}
void Gtank::draw()
{
if(alive==true)
{
pix=new QPixmap(800,600);
pix->fill(Qt::green);
QPainter painter(pix);
painter.drawImage(QPoint(X,Y),image);//此处X,Y都是三百
}
}
主窗口是800*600的,运行后无报错,但是效果不对,如果只是Gtank u; u.show()而不是Widget w; w.show()就还正常
求帮助,不知道这算伸手不。。给个大致思路也行,在网上看了QPainter的相关文档,可是用起来还是不懂
[解决办法]
我觉得你应该用QGraphicsItem和QGraphicsView.
[解决办法]