我正在为expression evaluator编写一个pyqt5程序,但运行该程序后,我无法看到任何窗口小部件,窗口变为空白
def expressionevaluator():
import sys
from PyQt5 import QtWidgets
from PyQt5 import QtCore
from PyQt5 import QtGui
from PyQt5.QtWidgets import QApplication, QWidget,QMainWindow
class Window(QtWidgets.QMainWindow):
def __init__(self):
super(Window,self).__init__()
self.setGeometry(50,50,500,300)
self.setWindowTitle("PyQt Tutorial")
self.setWindowIcon=QtGui.QIcon('pyqt_example2.PNG')
self.home()
def ExitForm(self):
sys.exit()
def home(self):
vbox=QtWidgets.QVBoxLayout()
textbrowser=QtWidgets.QTextBrowser()
lineedit=QtWidgets.QLineEdit()
btn=QtWidgets.QPushButton("QUIT")
btn.clicked.connect(self.close)
vbox.addWidget(textbrowser)
vbox.addWidget(lineedit)
vbox.addWidget(btn)
self.setLayout(vbox)
self.show()
if __name__=="__main__":
app=QApplication(sys.argv)
GUI=Window()
sys.exit(app.exec_())
expressionevaluator()
那我该怎么办?在
下面的代码运行得很好!!!!!!!!!!!!!!!在
在运行你的代码时,我的屏幕上显示了一个小部件,但是它的组件没有显示出来。与其设置QMainWindow的布局,不如让一个中心小部件(QWidget)用它的组件设置它的布局,而不是用这个小部件设置QMainWindow中央小部件。好了,现在你们都工作得很好了。在
布局有问题,因为QMainWindow的行为与其他窗口小部件不同,它有自己的布局和许多其他默认行为,中央窗口小部件是主窗口中没有显示的原因。在
注意:您可以对代码的结构进行许多改进,我只是尽可能少地更改以使其正常工作,例如,不要同时导入所有模块,只导入您需要的内容,例如QIcon、QLineEdit等,而不是整个qtwidget或QtCore。。。
相关问题 更多 >
编程相关推荐