最近编程时遇到绘制图形出现问题,好几天都没做好,希望高手赐教!问题如下:
问题一:使用QPainter类在按钮上绘制图形,绘制代码没问题,将绘制代码放在一slot中,若是点击按钮触发此slot,能够成功绘制出图形来;但若是在init函数中让其执行此slot则绘制不出来,为什么?init函数明明就执行了,这个slot也执行了,可就是显示不出图形来,真不知道怎么回事!是否还需要刷新函数?试了update()和repaint(),都不行。
问题二:我使用点击按钮关联slot方法绘制出图形后,画完后将窗体最小化,再恢复,则所画内容全部消失。
已经重载了paintEvent函数,并将绘制图形的函数放在其内,使用qWarning函数也发现paintEvent函数已经执行,但好似没有起到什么作用。
重载了moveEvent,resizeEvent函数,也将绘制图形函数放入其内,发现这两个函数还是很管用的,只要发生相应事件,则立即绘制图形。
但我需要在初始化对话框时已经将图形绘制在按钮上,一旦用户最小化窗口后再恢复还能看到绘制的按钮,不能总靠moveEvent和resizeEvent这两个事件来执行相应绘制代码。
还有其他什么刷新函数吗?或是还要重载什么函数?
这个问题已经困扰我好几天了,谁能帮帮我,谢谢了!