Pyqt:在QtDesigner中创建一个选项卡

时间:2018-06-15 18:02:50

标签: pyqt4 qt-designer qtabwidget

所以我有以下问题。我有一个包含Tabwidget的MainWindow。在我的主界面中,我想以下列方式访问每个标签页中的小部件:

var s3 = new AWS.S3();

var params = {
    Bucket: 'mybucket'
};

s3.makeUnauthenticatedRequest('listObjects', params, callback);

等等。

因此每个选项卡都包含MyLineEdit,但我想访问不同的选项卡作为QWidgetclass选项卡实例的成员。我怎么能在Qtdesigner中做到这一点?我可以以某种方式在QtDesigner中创建一个选项卡,然后将其加载到tabwidget(通过self.tabWidget.add()吗?)?我怎么能这样做?

提前致谢

1 个答案:

答案 0 :(得分:0)

您可以通过以下代码添加标签:

from PyQt4 import QtGui
from PyQt4 import QtCore
import sys

def main():
    app     = QtGui.QApplication(sys.argv)
    tabs    = QtGui.QTabWidget()
# Create tabs
    tab1    = QtGui.QWidget()   
    tab2    = QtGui.QWidget()
    tab3    = QtGui.QWidget()
    tab4    = QtGui.QWidget()
    # Resize width and height
    tabs.resize(250, 150)
    # Set layout of first tab
    vBoxlayout  = QtGui.QVBoxLayout()
    pushButton1 = QtGui.QPushButton("Start")
    pushButton2 = QtGui.QPushButton("Settings")
    pushButton3 = QtGui.QPushButton("Stop")
    vBoxlayout.addWidget(pushButton1)
    vBoxlayout.addWidget(pushButton2)
    vBoxlayout.addWidget(pushButton3)
    tab1.setLayout(vBoxlayout)   

    # Add tabs
    tabs.addTab(tab1,"Tab 1")
    tabs.addTab(tab2,"Tab 2")
    tabs.addTab(tab3,"Tab 3")
    tabs.addTab(tab4,"Tab 4") 

    # Set title and show
    tabs.setWindowTitle('PyQt QTabWidget @ pythonspot.com')
    tabs.show()

    sys.exit(app.exec_())


if __name__ == '__main__':
    main()