首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

绘制部件,部件移动有轨迹有关问题

2012-12-16 
绘制部件,部件移动有轨迹问题大致结构是这样,class tank : public QWidget, class Btank:public tank,clas

绘制部件,部件移动有轨迹问题
大致结构是这样,class tank : public QWidget, class Btank:public tank,   
class Gtank:public tank,   
class Widget : public QWidget (此为主窗口)


void tank::paintEvent(QPaintEvent *)   
{
   QPainter painter(this);
   painter.drawPixmap(QPoint(0,0),*pix);
}


void Btank::draw()           
{
        QPainter painter(pix);                     此处pix为主窗体的QPixmap*
        painter.drawImage(QPoint(X,Y),image);      此处图像已加载好
    
}

以Btank为例,对象每次移动后都调用draw()和update(),但是轨迹还在。。怎么能除去轨迹?
[最优解释]
直接调用主窗口的update么?

但是如果这样控件多了会不会闪屏呢。

为啥不把图片放到label里面。。直接移动这个控件呢? 不太理解你的需求。随便猜的。
[其他解释]
主窗口也要重画。
[其他解释]
先调用update试试  或repaint
[其他解释]

引用:
主窗口也要重画。


主窗口有几个对象,不知道怎么能局部重画呢?别把别的对象抹了。。
[其他解释]
引用:
直接调用主窗口的update么?

但是如果这样控件多了会不会闪屏呢。

为啥不把图片放到label里面。。直接移动这个控件呢? 不太理解你的需求。随便猜的。



请问,怎么不使用布局,设置label的位置?然后移动的时候是用哪个函数?网上没看到啊。。
[其他解释]
引用:
引用:直接调用主窗口的update么?

但是如果这样控件多了会不会闪屏呢。

为啥不把图片放到label里面。。直接移动这个控件呢? 不太理解你的需求。随便猜的。


请问,怎么不使用布局,设置label的位置?然后移动的时候是用哪个函数?网上没看到啊。。




是调用setGeometry()函数吗?


[其他解释]
直接Move

热点排行