我有一个QMainWindow
实例,需要读取xml文件。第一个文件包含构建ui和第二个所有元数据的所有必要信息。所以在我的MainWindow
open
函数中,我想在阅读第一个文件之后绘制ui,如:
MainWindow
open
范围内的:
readFirstFile(QString filename);
update();
readSecondFile(QString filename);
但是上面没有效果。如何在阅读第二个文件之前强制执行绘画?
答案 0 :(得分:4)
如果您需要立即重新绘制,可以使用repaint()
代替update()
。
QWidget::update()
的Qt文档的
此功能不会立即重绘;相反,当Qt返回主事件循环时,它会调度一个paint事件进行处理。这允许Qt优化以获得比调用repaint()更快的速度和更少的闪烁。