【问题标题】:Button is not showing in the QtWidget window按钮未显示在 QtWidget 窗口中
【发布时间】:2018-03-21 18:56:22
【问题描述】:

我创建了一个 gridlayout 审查 GUI 窗口。我在底部添加了标题、作者、评论标签和 LineEdit 以及退出按钮。当我执行脚本时,退出按钮未显示在输出窗口中。

     import sys
     from PySide import QtGui,QtCore

     class Example(QtGui.QWidget):

         def __init__(self):
            super(Example, self).__init__()

            self.initUI()

         def initUI(self):

             title = QtGui.QLabel('Title')
             author = QtGui.QLabel('Author')
             review = QtGui.QLabel('Review')

             titleEdit = QtGui.QLineEdit()
             authorEdit = QtGui.QLineEdit()
             reviewEdit = QtGui.QTextEdit()

             btn = QtGui.QPushButton("Quit", self)
             btn.resize(50,50)
             btn.clicked.connect(QtCore.QCoreApplication.instance().quit)

             grid = QtGui.QGridLayout()
             grid.setSpacing(10)

             grid.addWidget(title, 1, 0)
             grid.addWidget(titleEdit, 1, 1)

             grid.addWidget(author, 2, 0)
             grid.addWidget(authorEdit, 2, 1)

             grid.addWidget(review, 3, 0)
             grid.addWidget(reviewEdit, 3, 1, 5, 1)

             grid.addWidget(btn,6,1)

             self.setLayout(grid) 

             self.setGeometry(300, 300, 350, 300)
             self.setWindowTitle('Review')    
             self.show()



     def main():

         app = QtGui.QApplication(sys.argv)
         ex = Example()
         sys.exit(app.exec_())


     if __name__ == '__main__':
         main()

我找不到问题所在。我哪里做错了??

【问题讨论】:

    标签: python-2.7 pyside


    【解决方案1】:

    grid.addWidget(btn, 6, 1) 更改为grid.addWidget(btn, 8, 1)。您的QTextEdit 的高度为5,以网格为单位;因此3 + 5 = 8 是第一个空位。

    【讨论】:

    • 感谢@Matphy。现在grid.addWidget(btn, 8, 1) 正在工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多