1、QInputDialog----静态方法:可以获得用户所输入的单个数据。
from PyQt5.Qt import *
class Window(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("QInputDialog----静态方法的学习")
self.resize(500, 500)
self.setup_ui()
def setup_ui(self):
# 有返回值,说明他是阻塞式的方法,快速获取一个整型数据
result = QInputDialog.getInt(self, "xxx1", "xxx2", value=88, step=12)
# 快速获取一个double型数据
result = QInputDialog.getDouble(self, "xx2", "jxks", 888.88, decimals=3)
# 获取文本(字符串数据)
result = QInputDialog.getText(self, "ewi", "text")
QInputDialog.getMultiLineText(self, "da", "dks", "default")
# 获取下拉列表中某一个条目
result = QInputDialog.getItem(self, "xxd", "dsd", ["1", "2", "3"], 2, True)
# 如果没有提供步长调节,可以通过该对象设置,看是否有相关方法,遍历所有组件,找到对应的步长调节器
# 元组[最终结果,True or False]
print(result)
if __name__ == "__main__":
import sys
app = QApplication(sys.argv)
window = Window()
window.resize(500, 500)
window.show()
sys.exit(app.exec_())
2、QIputDialog功能作用:显示窗口的外观样式设置,
设置输入模式:
各个小分类设置:
输入模式:可以控制用户所输入的格式:(整型数据、文本字符串等)、界面的文本设置,可以控制他的标签按钮等。
from PyQt5.Qt import *
class Window(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("QInputDialog的学习")
self.resize(500, 500)
self.setup_ui()
def setup_ui(self):
# 顶层窗口外观标志
# 创建一个没有边框的输入对话框
input_d = QInputDialog(self, Qt.FramelessWindowHint)
# 设置模式,选择什么样的控件展示item
input_d.setOption(QInputDialog.UseListViewForComboBoxItems)
# 设置下拉列表
input_d.setComboBoxItems(["1", "2", "3"])
input_d.setLabelText("请输入你的姓名:")
input_d.setOkButtonText("好的")
input_d.setCancelButtonText("我想取消")
input_d.show()
if __name__ == "__main__":
import sys
app = QApplication(sys.argv)
window = Window()
window.resize(500, 500)
window.show()
sys.exit(app.exec_())
限定浮点类型的步长和范围:
首先设置输入模式:
input_d.setInputMode(QInputDialog.DoubleInput)
input_d.setDoubleRange(-199, 199)
设置可编辑下拉列表框:
input_d.setComboBoxItems(["1", "2", "3"])
input_d.setComboBoxEditable(True)
3、信号:
(整型、浮点型和文本字符串;前两者展示的控件是一个步长调节器,而文本字符串可以展示为单行文本编辑器、多行文本编辑器、下拉列表以及列表视图)
每种数据类型对应两种信号,值发生改变和值选中。(值被选中指的是:最终点击ok键)