使用所有窗口空间的Pyqt qtablewidget

时间:2013-08-05 12:40:59

标签: python qt user-interface pyqt

我试图创建一个简单的用户界面:qtablewidget,按钮和状态栏。 但桌子使用了所有窗口空间,所以我只能看不到按钮...... 谁能帮帮我吗?我无法看到我做错了什么。

class Example(QtGui.QMainWindow):
    def __init__(self):

        super(Example, self).__init__()

        table = QtGui.QTableWidget(q, 6)
        table.setGeometry(QtCore.QRect(0, 0, 1021, 461))
        table.setDragEnabled(True)
        table.setAlternatingRowColors(True)
        table.setCornerButtonEnabled(True)
        table.setSortingEnabled(True)
        table.verticalHeader().setSortIndicatorShown(True)

        self.setCentralWidget(table)

        table.setColumnWidth(0, 45)
        table.setColumnWidth(1, 100)
        table.setColumnWidth(2, 70)
        table.setColumnWidth(3, 65)
        table.setColumnWidth(4, 650)
        table.setColumnWidth(5, 90)

        b_save = QtGui.QPushButton()
        b_save.setGeometry(QtCore.QRect(0, 469, 101, 23))
        b_save.setObjectName(_fromUtf8("b_save"))

if __name__ == '__main__':
    app = QtGui.QApplication(sys.argv)
    if Login().exec_() == QtGui.QDialog.Accepted:
        window = Example()
        window.setWindowTitle('Tarefas')
        window.resize(1070, 561)
        window.show()
        sys.exit(app.exec_())

1 个答案:

答案 0 :(得分:1)

您已将表设置为中央窗口小部件。因此,它将被主要布局放置并调整大小。 您应该将您的按钮和表格放在另一个窗口小部件中,并将该窗口小部件设置为中央窗口小部件。