如果新的高度更大,它们会扩展,但如果更小,则不会缩小.
我尝试了updateGeometry(),但它没有改变任何东西.
这是一个例子,在子元素shran之后,父母的身高不会改变:
import sysfrom PyQt4.QtGui import *class MainWindow(QWidget): def __init__(self,parent=None): QWidget.__init__(self,parent) # inner Widget self.Widget = qgroupbox('inner') vBox_inner = QVBoxLayout(self.Widget) button1 = QPushbutton('100') button1.clicked.connect(lambda: self.change_height(100)) vBox_inner.addWidget(button1) button2 = QPushbutton('200') button2.clicked.connect(lambda: self.change_height(200)) vBox_inner.addWidget(button2) # outer layout vBox = QVBoxLayout(self) vBox.addWidget(self.Widget) # resizing element def change_height(self,height): self.Widget.setFixedHeight(height)app = QApplication(sys.argv)myapp = MainWindow()myapp.show()sys.exit(app.exec_())
有没有办法调整所有父母的小部件?
用Python回答:
Widget = self.parent()while Widget: Widget.adjustSize() Widget = Widget.parent()解决方法 您应该在“顶层”窗口小部件(在本例中为MainWindow)上调用
adjustSize()
方法. 您需要自己在窗口小部件层次结构中传播该调用,以获得比样本更复杂的布局.在C中,你可以这样做:
QWidget *w = <the Widget you resized>->parentWidget();while (w) { w->adjustSize(); w = w->parentWidget();}总结
以上是内存溢出为你收集整理的python – 缩小子大小后缩小父级小部件全部内容,希望文章能够帮你解决python – 缩小子大小后缩小父级小部件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)