pyqt 一个qinputdialog多个输入框
时间: 2024-09-07 08:03:52 浏览: 89
对PyQt5的输入对话框使用(QInputDialog)详解
在PyQt中,`QInputDialog` 是一个用于获取用户输入的简单工具,但它默认只能显示单行文本输入或选择一个列表项。如果你想要创建一个多输入框的对话框,你可能需要自定义一个`QWidget`并与之配合使用。你可以使用`QFormLayout`来组织输入框,并在其中添加` QLineEdit`或者其他合适的控件。
以下是一个简单的例子,展示了如何在一个窗口中创建两个独立的输入框:
```python
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QFormLayout, QLineEdit
class MultiInputDialog(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle('Multi Input Dialog')
layout = QFormLayout()
self.textbox1 = QLineEdit()
self.textbox2 = QLineEdit()
# 添加输入框到布局
layout.addRow("Input 1:", self.textbox1)
layout.addRow("Input 2:", self.textbox2)
self.setLayout(layout)
def main():
app = QApplication([])
dialog = MultiInputDialog()
if dialog.exec_() == QDialog.Accepted:
print(f"Input 1: {dialog.textbox1.text()}")
print(f"Input 2: {dialog.textbox2.text()}")
if __name__ == '__main__':
main()
```
在这个例子中,用户可以在两个单独的输入框中输入文本,然后点击“接受”按钮提交数据。如果你想要在`QDialog`中显示这个对话框,只需将`MultiInputDialog`作为`QDialog`的内容即可。
请注意,这只是一个基础示例,实际应用可能需要更复杂的处理,比如验证输入,或者存储和管理多个输入字段的数据结构。
阅读全文