Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 在不清除背景的情况下绘制_Qt_Background_Qpainter - Fatal编程技术网

Qt 在不清除背景的情况下绘制

Qt 在不清除背景的情况下绘制,qt,background,qpainter,Qt,Background,Qpainter,我正在使用QPainter在窗口上绘制一些图形。不幸的是,每次调用paintEvent()函数时,整个窗口都会被清除。我怎么能在没有清理的情况下画画?也就是说,我如何让上一次油漆活动的材料保持原样 我正在使用Qt4在Qt3中,从中设置Qt::WNoAutoErase标志,以避免在每次绘制事件时清除窗口 您可以通过将此标志传递给来设置。您需要使用setter来设置。您正在搜索的是Qt::NoBackgroundenum。因为两个回复都只针对Qt3,所以这里是Qt4的解决方案。你需要打电话 setA

我正在使用QPainter在窗口上绘制一些图形。不幸的是,每次调用
paintEvent()
函数时,整个窗口都会被清除。我怎么能在没有清理的情况下画画?也就是说,我如何让上一次油漆活动的材料保持原样


我正在使用Qt4

在Qt3中,从中设置
Qt::WNoAutoErase
标志,以避免在每次绘制事件时清除窗口


您可以通过将此标志传递给来设置。

您需要使用setter来设置。您正在搜索的是
Qt::NoBackground
enum。

因为两个回复都只针对Qt3,所以这里是Qt4的解决方案。你需要打电话

setAttribute(Qt::WA_OpaquePaintEvent);

(例如在构造函数中)遵循文档。

Qt文档说明不再需要它。所以他不应该使用it@Patrice:啊,是的-在Qt4中它不再工作。这是Qt3解决方案。您使用的是哪个Qt版本?