我想根据复选框是否选中显示两种布局之一。
只使用小部件,我可以做到以下操作,这很好用:
(在此示例中,每个小部件都是QLineEdit)
myCheckbox.stateChanged.connect(switchControls)
def switchControls (self, state):
if state == 2:
self.widget1.show()
self.widget2.hide()
else:
self.widget1.hide()
self.widget2.show()
然而,由于我想为每个QLineEdit添加一个描述性标签,我需要在某种布局或容器中组合QLineEdit+QLabel。 我一直在尝试使用addlayout/removeLayout/removeItem将以上操作应用于布局而不是小部件,但无法使其正常工作。上次尝试时程序崩溃了。
切换两个布局的最简单方法是什么?它不一定要使用复选框,但我更喜欢这样做。
QWidget
和QFrame
。我来举个例子。 - Oleh Prypin