目录
要在 PySide6 中建立输入框并获取其值,你可以使用 QLineEdit 类。以下是一个简单的示例,展示了如何在 PySide6 窗口中添加一个输入框,并获取用户输入的值:
import sys
from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton, QLineEdit
class MainWindow(QMainWindow):
? ? def __init__(self):
? ? ? ? super().__init__()
? ? ? ? self.initUI()
? ? def initUI(self):
? ? ? ? self.setWindowTitle('My Window')
? ? ? ? self.setGeometry(100, 100, 400, 300)
? ? ? ? # 创建一个输入框
? ? ? ? self.input_box = QLineEdit(self)
? ? ? ? self.input_box.move(150, 150) ?# 设置输入框的位置
? ? ? ? # 创建一个按钮
? ? ? ? btn = QPushButton('获取值', self)
? ? ? ? btn.move(200, 200) ?# 设置按钮的位置
? ? ? ? btn.clicked.connect(self.on_click) ?# 设置按钮的点击信号与槽的连接
? ? def on_click(self):
? ? ? ? # 获取输入框的值
? ? ? ? value = self.input_box.text()
? ? ? ? print('输入的值:', value)
if __name__ == '__main__':
? ? app = QApplication(sys.argv)
? ? mainWindow = MainWindow()
? ? mainWindow.show()
? ? sys.exit(app.exec_())
在 PySide6 中,你可以使用 QDialog 类来创建对话框,并通过信号和槽机制获取用户输入的值。以下是一个简单的示例,展示了如何在 PySide6 中创建对话框并获取用户输入的值:
import sys
from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton, QDialog, QVBoxLayout, QLineEdit, QLabel
class MyDialog(QDialog):
? ? def __init__(self, parent=None):
? ? ? ? super().__init__(parent)
? ? ? ? self.initUI()
? ? def initUI(self):
? ? ? ? self.setWindowTitle('对话框')
? ? ? ? self.setGeometry(300, 300, 250, 150)
? ? ? ? layout = QVBoxLayout()
? ? ? ? self.setLayout(layout)
? ? ? ? label = QLabel('请输入值:', self)
? ? ? ? layout.addWidget(label)
? ? ? ? self.line_edit = QLineEdit(self)
? ? ? ? layout.addWidget(self.line_edit)
? ? ? ? btn = QPushButton('确定', self)
? ? ? ? btn.clicked.connect(self.on_click)
? ? ? ? layout.addWidget(btn)
? ? def on_click(self):
? ? ? ? value = self.line_edit.text()
? ? ? ? print('输入的值:', value)
? ? ? ? self.accept() ?# 关闭对话框并返回确认状态
class MainWindow(QMainWindow):
? ? def __init__(self):
? ? ? ? super().__init__()
? ? ? ? self.initUI()
? ? def initUI(self):
? ? ? ? self.setWindowTitle('主窗口')
? ? ? ? self.setGeometry(100, 100, 400, 300)
? ? ? ? btn = QPushButton('打开对话框', self)
? ? ? ? btn.clicked.connect(self.on_click)
? ? ? ? btn.move(150, 150) ?# 设置按钮的位置
? ? def on_click(self):
? ? ? ? dialog = MyDialog()
? ? ? ? result = dialog.exec() ?# 显示对话框并等待用户操作
? ? ? ? if result == QDialog.Accepted: ?# 判断用户是否点击了“确定”按钮
? ? ? ? ? ? print('用户输入了值')
? ? ? ? else: ?# 如果用户点击了“取消”按钮或者关闭对话框,则返回否认状态
? ? ? ? ? ? print('用户没有输入值')
if __name__ == '__main__':
? ? app = QApplication(sys.argv)
? ? mainWindow = MainWindow()
? ? mainWindow.show()
? ? sys.exit(app.exec_())