我在Qt(C ++)中创建了一个简单的Paint程序,您可以在其中选择一个形状,然后在画布上跟随鼠标直到您单击,此时该形状将锁定到该位置的屏幕。然后,用户可以以这种方式继续,向屏幕添加越来越多的形状。我的问题在于我点击后让这些形状保持原位。我尝试使用this-> setAttribute(Qt :: WA_OpaquePaintEvent,true),但是一旦我将该属性设置为false,我就会丢失数据。有没有什么方法可以“锁定”屏幕,这样我的旧东西就会被新东西覆盖?
答案 0 :(得分:0)
如果你想保留绘制的数据,你应该首先绘制到QPixmap,然后在你的小部件上绘制这个QPixmap。