任务是动态添加成对的小部件,例如,QLabel
添加到QLineEdit
界面。
我创建了一个QMixedWidget
包含其他小部件的包装类。
class QMixedWidget(QWidget):
def __init__(self, parent=None, *widgets):
super().__init__(parent)
self._widgets = widgets
def paintEvent(self, event: PySide6.QtGui.QPaintEvent) -> None:
for w in self._widgets:
w.paintEvent(event)
super().paintEvent(event)
def update(self) -> None:
for w in self._widgets:
w.update()
super().update()
但是,当我尝试将创建的小部件添加到Layout
没有任何反应时,也许应该覆盖其他一些方法?
def _add_n_action(self):
label = QLabel("Источник шума L")
value = QLineEdit("0")
w = QMixedWidget(self.add_group_box, label, value)
self.add_layout.addWidget(w)
请始终提供一个可重现性最低的示例来说明问题。
如果我理解正确的话,那么你的任务可能看起来像这样。安装PySide6
的导入并尝试: