,可以通过以下步骤实现:
下面是一个示例代码:
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QComboBox, QLineEdit, QPushButton, QHBoxLayout, QGroupBox, QLabel
class MainWindow(QWidget):
def __init__(self):
super().__init__()
self.layout = QVBoxLayout()
self.setLayout(self.layout)
self.combo_box = QComboBox()
self.combo_box.addItem("Option 1")
self.combo_box.addItem("Option 2")
self.combo_box.addItem("Option 3")
self.layout.addWidget(self.combo_box)
self.add_button = QPushButton("Add QLineEdit")
self.add_button.clicked.connect(self.add_line_edit)
self.layout.addWidget(self.add_button)
self.line_edit_group = QGroupBox("QLineEdit Widgets")
self.line_edit_layout = QVBoxLayout()
self.line_edit_group.setLayout(self.line_edit_layout)
self.layout.addWidget(self.line_edit_group)
def add_line_edit(self):
current_option = self.combo_box.currentText()
line_edit = QLineEdit()
line_edit.setText(current_option)
delete_button = QPushButton("Delete")
delete_button.clicked.connect(lambda: self.delete_line_edit(line_edit))
line_edit_layout = QHBoxLayout()
line_edit_layout.addWidget(QLabel(current_option + ": "))
line_edit_layout.addWidget(line_edit)
line_edit_layout.addWidget(delete_button)
self.line_edit_layout.addLayout(line_edit_layout)
def delete_line_edit(self, line_edit):
line_edit_layout = line_edit.parent()
line_edit_layout.deleteLater()
if __name__ == "__main__":
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
在这个示例中,我们创建了一个主窗口,并在主窗口中添加了一个QComboBox控件和一个QPushButton按钮。当用户点击按钮时,会根据QComboBox的当前选项动态生成一个带有删除按钮的QLineEdit小部件。用户可以通过点击删除按钮来删除相应的QLineEdit小部件。
这个示例中没有涉及到具体的云计算相关内容,因此没有推荐腾讯云的相关产品。如果需要在云计算环境中使用这个功能,可以将这个示例代码集成到相应的云计算平台或应用程序中。
领取专属 10元无门槛券
手把手带您无忧上云