2013-08-20 35 views
0

所以我有一个从QMainWindow启动的QDialog类。构造函数设置UI。我在QMainWindow中声明了该对象,然后我调用了在QDialog类中循环的方法。结果是,当显示QDialog时(dialog-> show()在构造函数中),窗口不显示布局。循环完成后,将显示布局。QDialog不在循环中绘画

我试过使用exec()来代替,但是直到对话框关闭之后方法才会执行。

+0

什么样的循环?对话框可以是模态的或非模态的,如果它们没有被阻塞,它们应该在内部运行它们自己的事件循环。如果您阻止该机制,则可能无法正常工作。 – dtech

+1

也许尝试在创建对话框和/或运行循环的代码周围放置'qApp-> processEvents()'。 – Anthony

+0

qApp-> processEvents()在调用方法之前做了它。谢谢 – nwnoga

回答

1

qApp->processEvents()应该可以帮到你。尝试将其放置在创建对话框和/或运行循环的代码中。