Pyside6下输入框和对话框

发布时间:2024年01月22日

目录

一:输入框

二:对话框


一:输入框

要在 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_())

文章来源:https://blog.csdn.net/qinshi501/article/details/135758774
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。