此问题适用于运行Stretch的Raspberry Pi 3B +。 Python 3.5。创建Qt5应用程序的用户界面。如果在app.exec_()之前进行了一些耗时的设置,则只能看到一个空的窗口框架,而不是完全渲染的窗口。
此行为不同于MacO上的行为,例如,确实渲染了窗口。
import time
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
# the main GUI window
class App(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle('Test')
# create and run the interactive application
if __name__ == '__main__':
app = QApplication(sys.argv)
mainWindow = App() # create the application window
mainWindow.show() # this should show the window
app.processEvents() # everything should be updated
# delay. only an empty window frame is shown.
print ('Delay 10s...')
time.sleep(10)
# enter the GUI loop. now the window is rendered.
sys.exit(app.exec_())
仅显示一个空的窗口框架。可以预期的是一个完全渲染的窗口(在这种情况下,它应该只是一个空白窗口,但是如果还有其他GUI元素,它们也应该显示。