• 3976阅读
  • 4回复

按钮上描绘一组波形数据该如何实现 [复制链接]

上一主题 下一主题
离线aaronhou
 
只看楼主 倒序阅读 楼主  发表于: 2010-03-27
我的需求是在一个按钮上将一组数据以波形的方式描绘出来,可是遇到如下问题:
1)在paintEvent中直接描绘,会导致按钮部件没有在窗体中显示出来,仅显示出描绘的波形;
2)绘图在Image然后映射的方式,在paintEvent中drawImage,这样的效果是仅显示出画布和波形,但还是没有按钮的边框出现.

请教这个问题该怎么解决,非常感谢.
离线nmiirq

只看该作者 1楼 发表于: 2010-03-27
应该是重写paintEvent时,没有在最后执行父类的paintEvent所致!
离线aaronhou
只看该作者 2楼 发表于: 2010-03-27
void PaintPat::paintEvent(QPaintEvent *)
{
    QPainter painter(this);
    painter.drawImage(0, 0, image);

}

请问该怎么修改呢,
离线aaronhou
只看该作者 3楼 发表于: 2010-03-27
我弄糊涂了,不应该重载pushbutton的paintevent(),而是利用其它部件的描绘事件生成Image,然后再把image作为图标贴在按钮上,但是现在button5->setIcon(QImage(PatDisp->image))会报警,为什么呢?
error: no matching function for call to 'QToolButton::setIcon(QImage)'
离线aaronhou
只看该作者 4楼 发表于: 2010-03-27
解决了,看来是要把QImage转换成QPixmap才可以
快速回复
限100 字节
 
上一个 下一个