当前位置:编程学习 > wap >>

求大神指教:widget里添加背景图片时,预览时可以看见,编译后就没了怎么办

然后按照一个大神的指示添加了如下代码:
void CustomWidget::paintEvent(QPaintEvent *)
 {
     QStyleOption opt;
     opt.init(this);
     QPainter p(this);
     style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
 }

然后编译的时候出现:成员函数‘void Widget::paintEvent(QPaintEvent*)未在类‘widget’中声明


怎么添加这个声明啊。。小弟太菜了,忘各位大神不吝赐教啊,小弟在此拜谢了


小弟还有QT方面的好多问题,也百度不出来,感觉举步维艰,忘大神加我QQ:95225836
就此拜谢。。。 --------------------编程问答-------------------- 可能出现的问题:
1:Widget没有继承QWidget
2:头文件里没有声明 paintEvent

--------------------编程问答-------------------- T_T在头文件里面加入

void paintEvent(QPaintEvent*); --------------------编程问答-------------------- void CustomWidget::paintEvent(QPaintEvent *)
 {
     QPainter p(this);
     QImage image("t.png");
     painer.drawPixmap( QPixmap::fromImage(image) );
     QWidget::paintEvent( event );
 }
painer.drawPixmap( QPixmap::fromImage(image) )函数具体是不是这样写忘了,
好像还要加区域,要是区域的话通过width(),height()两个函数获取,
查一下帮助文档应该能行 --------------------编程问答--------------------
引用 2 楼 qq214517703 的回复:
T_T在头文件里面加入

void paintEvent(QPaintEvent*);
没成功 --------------------编程问答--------------------
引用 3 楼 sanmao348131 的回复:
void CustomWidget::paintEvent(QPaintEvent *)
 {
     QPainter p(this);
     QImage image("t.png");
     painer.drawPixmap( QPixmap::fromImage(image) );
     QWidget::paintEvent( event );
 }
painer.drawPixmap( QPixmap::fromImage(image) )函数具体是不是这样写忘了,
好像还要加区域,要是区域的话通过width(),height()两个函数获取,
查一下帮助文档应该能行
没能行 --------------------编程问答-------------------- 你查看一下,可能是你的电脑不识别*.png格式的图片,上述代码我试验过,完全可行。先换个*.bmp试试。 --------------------编程问答-------------------- 建工程时类名写错了吧??!!到底是CustomWidget还是Widget呢???基类要和.cpp文件里void后面的类名一致喔!!!
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,