如何解决在QFrame中添加QWidget
我正在使用Python3和QtDesigner开发用于图形用户界面的桌面软件。
我的问题是问题:我正在尝试通过QFrame自动创建许多QRadioButton(RadioButton必须以[孩子的身份?]留在框架内)。
现在,我看到我只能在布局内创建新的小部件(例如“ MyLayout.addWidget(QRadioButton”)),并且无法执行“ MyFrame.addWidget(QRadioButton)”之类的操作。我需要在框架内放置这些小部件,因为这样我可以使用“ MyRB.move(X,Y)”将它们放置在正确的位置。
使用QtDesigner可以将许多小部件(如RadioButtons)放置在具有“残缺布局”的框架中,这样我就可以选择X,Y坐标,但是我需要创建和放置可变数量的那些。
是否可以在QFrame中创建Qwidget?
解决方法
[编辑] 根据musicamante的评论,我知道这是一个父母问题。 我试图在主窗口中插入标签和单选按钮:
def __init__(self):
super().__init__()
uic.loadUi('DSS_GUI2.ui',self) # i load the GUI with QtDesigner
LB1 = QLabel('MyLabel',self)
RB1 = QRadioButton('MyRadioButton',self)
...
这个非常简单的示例可以正常工作,但是当我尝试通过函数添加标签时
def myFunction(self):
LB1 = QLabel('MyLabel')
LB1.setObjectName('LABEL_1')
LB1.setParent(self.myFrame)
窗口小部件已插入但不可见,实际上添加了以下几行以检查他的存在
WidgetList = self.myFrame.findChildren(QLabel)
for item in WidgetList:
print(item.objectName())
我在控制台中看到标签在那里。 你知道为什么它不可见吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。