从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件

  • ​​QInputDialog控件的作用​​
  • ​​QInputDialog控件常用方法​​
  • ​​代码示例​​

QInputDialog控件的作用

QInputDialog控件是一个标准对话框,由一个文本框和两个按钮(OK按钮和Cancel 按钮)组成。当用户单击OK按钮或按 Enter键后,在父窗口可以收集通过QInputDialog控件输入的信息。

在QInputDialog 控件中可以输入数字、字符串或列表中的选项;标签用于提示必要的信息。

QInputDialog控件常用方法

从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件_字符串

代码示例

# -*- coding: utf-8 -*-
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *

class InputdialogDemo(QWidget):
def __init__(self, parent=None):
super(InputdialogDemo, self).__init__(parent)
layout = QFormLayout()
self.btn1 = QPushButton("获得列表里的选项")
self.btn1.clicked.connect(self.getItem)
self.le1 = QLineEdit()
layout.addRow(self.btn1,self.le1)

self.btn2 = QPushButton("获得字符串")
self.btn2.clicked.connect(self.getIext)
self.le2 = QLineEdit()
layout.addRow(self.btn2,self.le2)

self.btn3 = QPushButton("获得整数")
self.btn3.clicked.connect(self.getInt)
self.le3 = QLineEdit()
layout.addRow(self.btn3,self.le3)
self.setLayout(layout)
self.setWindowTitle("Input Dialog 示例")

def getItem(self):
items = ("C", "C++", "Java", "Python")
item, ok = QInputDialog.getItem(self, "select input dialog",
"语言列表", items, 0, False)
if ok and item:
self.le1.setText(item)

def getIext(self):
text, ok = QInputDialog.getText(self, 'Text Input Dialog', '输入姓名:')
if ok:
self.le2.setText(str(text))

def getInt(self):
num,ok = QInputDialog.getInt(self,"integer input dualog","输入数字")
if ok:
self.le3.setText(str(num))

if __name__ == '__main__':
app = QApplication(sys.argv)
demo = InputdialogDemo()
demo.show()
sys.exit(app.exec_())

代码运行结果:

从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件_字符串_02


点击“获得列表里的选项”按钮结果:

从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件_QInputDialog_03


选择列表中的Python选项点击确定后结果:

从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件_Pyqt5_04


点击获取字符串,并输入123结果:

从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件_控件_05


从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件_字符串_06


点击获得整数结果:

从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件_QInputDialog_07


从零开始学Pyqt5之【控件介绍】(12):QInputDialog对话框控件_字符串_08