繁体   English   中英

PyQt - 将父小部件调整为其子小部件

[英]PyQt - resize parent widget to its child

只是一个带有标签小部件的主小部件。

问题是 - 当我运行它时,只显示部分选项卡(如附图所示)。 因此,您需要调整大小或滚动选项卡以获取最后一个。

在此处输入图像描述

如何设置它以便 window 从一开始就显示所有选项卡?

import sys
from PyQt4.QtGui import *

class MainWindow(QWidget):
    def __init__(self, parent=None):
        QWidget.__init__(self, parent)

        # making tabs
        tabs = QTabWidget()
        tabs.addTab(QWidget(), '111111')
        tabs.addTab(QWidget(), '222222')
        tabs.addTab(QWidget(), '333333')
        tabs.addTab(QWidget(), '444444')

        # inserting in vbox
        vbox = QVBoxLayout(self)
        vbox.addWidget(tabs)

app = QApplication(sys.argv)
myapp = MainWindow()
myapp.show()
sys.exit(app.exec_())

如何调整所有标签的大小?
问题出在哪里 - 它是父小部件、选项卡还是 vbox?

您可以使用QTabWidget.setUsesScrollButtons(bool)

import sys
from PyQt4.QtGui import *

class MainWindow(QWidget):
    def __init__(self, parent=None):
        QWidget.__init__(self, parent)

        # making tabs
        tabs = QTabWidget()
        tabs.setUsesScrollButtons(False) #here is

        tabs.addTab(QWidget(), '111111')
        tabs.addTab(QWidget(), '222222')
        tabs.addTab(QWidget(), '333333')
        tabs.addTab(QWidget(), '444444')
        # inserting in vbox
        vbox = QVBoxLayout(self)
        vbox.addWidget(tabs)

app = QApplication(sys.argv)
myapp = MainWindow()
myapp.show()
sys.exit(app.exec_())

http://doc.qt.nokia.com/4.7/qtabwidget.html#usesScrollButtons-prop

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM