文章目录
- 一、Input Widgets定义
- 二、QLineEdit
- 1.定义
- 2.常用属性
- 2.1 echoMode 类型
- 3.常用信号
- 4.输入验证与格式化
- 4.1 正则表达式验证
- 4.2 整数 / 浮点数验证
- 4.3 自定义输入掩码
- 三、QSpinBox
- 1.定义
- 2.常用属性
- 3.常用信号
- 四、QDoubleSpinBox
- 1.定义
- 2.与QSpinBox区别
- 五、QComboBox
- 1. 两种模式
- 2.常用属性
- 3.常用信号
一、Input Widgets定义
Input Widgets 是 Qt 中用于用户输入的组件,例如:
- QLineEdit(单行文本输入)
- QTextEdit(多行富文本编辑)
- QSpinBox/QDoubleSpinBox(数值输入框)
- QComboBox(下拉选择框)
- QSlider/QDial(滑块和旋钮)
- QCheckBox/QRadioButton(复选框和单选按钮)
二、QLineEdit
1.定义
QLineEdit 主要用于接收用户的单行文本输入,具备文本显示、编辑、验证和格式化等功能。
2.常用属性
- text() 获取/设置文本内容
- placeholderText 占位文本(输入框提示)
- maxLength 最大输入长度
- echoMode 文本显示模式
- readOnly 只读模式
- alignment 文本对齐方式
2.1 echoMode 类型
- QLineEdit::Normal(默认模式,正常显示输入的文本);
- QLineEdit::Password(显示密码掩码,如圆点●,实际文本被隐藏,常用于密码输入场景);
- QLineEdit::NoEcho(完全不显示任何内容,但实际文本被存储,这种模式较少使用);
- QLineEdit::PasswordEchoOnEdit(编辑时显示实际文本,短暂延迟后变为密码掩码,在一定程度上兼顾了用户输入的便利性和密码的安全性)。
3.常用信号
- textChanged(text) 文本内容改变时
- textEdited(text) 用户手动编辑文本时
- returnPressed() 用户按下回车键时
- editingFinished() 编辑完成时(失去焦点或按回车)
- selectionChanged() 选中文本发生变化时
4.输入验证与格式化
4.1 正则表达式验证
使用QRegExpValidator限制输入格式,例如只允许输入数字和字母
4.2 整数 / 浮点数验证
使用QIntValidator或QDoubleValidator
4.3 自定义输入掩码
使用setInputMask()限制输入格式
QLineEdit *phoneEdit = new QLineEdit(&window);
phoneEdit->setInputMask("999 9999 9999;_");
1、格式说明:占位符9表示只能输入数字,分号;后的_表示未输入位置的占位符(若不指定占位符,默认使用空格)。
2、获取实际文本。
使用