`
qimo601
  • 浏览: 3445129 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

控制QLineEdit的输入范围

阅读更多

 

1.使用正则表达式检验QLineEdit的输入范围(代码如下):

#include <qvalidator.h>

#include <qlineedit.h>

 

QLineEdit *lineEdit = new QLineEdit(this);

QRegExp regExp("[A-Za-z][1-9][0-9]{0,2}");   //^[1-9][0-9]*$ 和 ^[1-9]{1}[/d]*$    

                                            //上面的正则表达式表示只能输入大于0的正整数

lineEdit->setValidator(new QRegExpValidator(regExp, this));


#####或者用这个

QLineEdit只输入字母和数字 收藏

        QRegExp regx("[a-zA-Z0-9]+$");

        QValidator *validator = new QRegExpValidator(regx, lined );

        ui->lined->setValidator( validator );

 

2.使用 QIntValidator 整型数验证控件控制QLineEdit的输入范围(代码如下):

  #include <qvalidator.h>

  #include <qlineedit.h>

  QValidator* validator = new QIntValidator( 100, 999, this );

  QLineEdit* edit = new QLineEdit( this );

      // 只允许 edit 输入整数 100 到 999

  edit->setValidator( validator );

  

lineedit = QLineEdit() 实例化一个输入框

 

lineedit =setReadOnly(True) #设置为只读

 

lineedit.setDragEnabled(True) #设置能接受拖放

 

lineedit.setMaxLength(5) #设置最大长度

 

lineedit.selectAll() #全选

 

lineedit.setFocus() #得到焦点

 

lineedit.setInputMask("dx") #设置修饰 该输入框必须输入两个字符

 

punctuationRe = QRegExp(r"[ ,;:.]") #得到一个regexp对象 可用下面的验证

 

lineedit.setValidator(QRegExpValidator(QRegExp(r"[0-9]+")),self) #设置验证 检验用户输入内容

 

lineedit.emit(SIGNAL('textChanged(QString)')) 发出 信号 (设置为只读时貌似发不出 没有具体测试)

 

lineedit.emit(SIGNAL(textEdited(QString)')) 发出 信号 如果设置了验证 该信号在通过验证才能发出 (设置为只读时貌似发不出 没有具体测试)

分享到:
评论
1 楼 charles_gz 2012-04-16  
学习了! 

相关推荐

    Qt LineEdit输入数值限制实例

    总的来说,通过`QRegExpValidator`和正则表达式,我们可以灵活地控制Qt中的`QLineEdit`控件,使其输入的数据既美观又准确,提高了用户界面的用户体验和数据的准确性。在实际项目中,可以根据需求选择最合适的验证...

    PyQt5(13)之控件QLineEdit(1).pdf

    QLineEdit是PyQt5中构建用户界面时不可或缺的一部分,它的功能强大,包括设置文本、获取输入、控制显示模式、添加占位文本、清空按钮以及自动补全等,这些特性使得它能够适应多种用户输入场景。通过灵活地配置和扩展...

    QDoubleValidator类和QIntValidator类不生效问题

    在QT编程中,数据输入的验证是至关重要的,特别是对于涉及数值输入的界面元素,如QLineEdit或QSpinBox。QDoubleValidator和QIntValidator是QT...通过理解这些知识点,你可以更好地控制和调试QT界面中的数值输入验证。

    Qt textBrowser 怎么限制输入的文本大小?-CSDN论坛1

    此外,QLineEdit控件提供了一些内置的尺寸控制功能,如果你的场景允许使用非富文本的输入限制,QLineEdit可能是更好的选择。它可以直接设置最大字符数限制,通过`setMaxLength()`函数即可实现。 总的来说,限制...

    qt使用正则表达式限制lineEdit的输入,对正则表达式进行了封装,可以直接引入,工程编译正常

    总之,通过Qt的正则表达式功能,我们可以实现对lineEdit输入的强大控制,提供更友好的用户交互体验。这个项目提供的封装使得这一功能的实现更加便捷,只需简单引入和调用即可。在实际开发中,灵活运用正则表达式可以...

    Qt模拟Window下的IP地址控件

    可以使用QValidator子类,如QIntValidator,设置其下限为0,上限为255,确保用户输入的值在有效范围内。同时,可以使用QLineEdit的textChanged()信号,监听文本变化,实时验证输入并给予反馈。 为了增加用户体验,...

    Qt 自定义IP输入框

    自定义IP输入框对于需要精确控制用户输入网络配置信息的软件特别有用。 首先,我们需要了解Qt中的QLineEdit控件。QLineEdit是Qt提供的一种基本输入控件,用于单行文本输入。在自定义IP输入框时,我们通常会基于...

    QtWidgetsApplication1.rar

    这个应用专注于提供一个自定义的数值输入控件,它具有特定的增强功能,如下拉数字小键盘、前后缀设定、输入值范围限制以及小数位数控制。这些特性使得该控件在进行数值输入时更加便捷和精确,尤其适用于工程、科学或...

    基于Qt4.8自定义控件,IP控件,小白编写

    例如,可以覆盖`keyPressEvent`以处理键入事件,确保输入的数字在0-255范围内,并限制每组数字之间只能插入一个点。 3. **输入验证**:实现`validate`函数,用于检查输入是否符合IPv4格式。如果输入不合法,返回`...

    QT第三天,水果计价界面和功能

    3. **数量输入(QSpinBox或QDoubleSpinBox)**:让用户输入购买的数量,可以限制输入范围和精度。 4. **单价输入(QLineEdit或QDoubleSpinBox)**:显示或输入水果的单价,同样可以限制输入格式。 5. **总价标签...

    QSpinboxpro.rar

    它还支持最小值、最大值设定,以及步长设置,可以限制用户输入的范围并控制每次增减的数值大小。然而,对于某些复杂的用户界面设计,QSpinBox的默认功能可能无法满足所有需求,这时就需要进行自定义扩展。 ...

    Qt学生成绩管理系统源码示例可运行

    5. 数据验证和错误处理:为了确保输入数据的准确性,系统可能会包含数据验证功能,例如检查输入的成绩是否在有效范围内。同时,错误处理机制可以捕捉和处理可能出现的问题,如数据库连接失败或数据冲突。 6. 数据...

    投资利率计算,QT源码

    6. **QDoubleSpinBox**:如果需要精确控制输入数字,开发者可能会使用QDoubleSpinBox,它可以限制输入的数值范围并指定小数位数。 7. **QLabel**:用于展示文本,如计算器的结果。 8. **QApplication** 和 **...

    Qt四则运算计算器源码

    QDoubleValidator则限制用户输入的有效范围,确保输入的是合法的浮点数,以进行四则运算。 7. **QPushButton和信号槽**:在计算器中,每个按钮(如数字键、运算符键、等于号键等)都是一个QPushButton。点击按钮时...

    C++可视化四则运算计算器

    总的来说,一个C++实现的可视化四则运算计算器涉及到了基本的输入输出、流程控制、字符串处理、运算符重载、GUI编程以及可能的表达式解析。这样的项目不仅可以锻炼编程能力,还能提高对C++特性和编程原理的理解。

    Qt Quick常用元素介绍,适合初学者

    它可以用于收集用户输入的一行文本,并提供了多种属性来控制其行为: - **验证与限制**:`TextInput` 支持通过 `validator` 或 `inputMask` 对输入进行范围限制。例如,使用 `IntValidator` 可以指定输入数字的范围...

    qt用户交互界面,大部分控件都用到了

    3. **QLineEdit**:用于用户输入单行文本,常用于获取用户输入的数据。 4. **QTextEdit**:允许用户输入和编辑多行文本,支持格式化和插入图片。 5. **QComboBox**:下拉列表框,提供多项选择。 6. **QSpinBox**和**...

    Delegate.rar

    2. **内容限制**:通过控件的属性设置或信号槽连接,可以限制用户在编辑器中能输入的内容,比如设定输入范围、验证输入格式等。 3. **动态更新**:当模型数据变化时,代理需要更新对应的视图,这可以通过`...

    Qt常用的控件widgets-例程

    9. **QSlider** - 滑块控件,常用于设置范围值,如音量控制或进度条。 10. **QProgressBar** - 显示任务进度,可以是水平或垂直的,用于告知用户任务执行的百分比。 11. **QGroupBox** - 可以将一组相关的控件封装...

    qt5很基础很详细的教程

    1.3 QLineEdit单行文本:QLineEdit提供单行文本输入框,用于接收用户输入的单行文本。 1.4 QTextEdit多行文本:这是一个更为复杂的文本编辑器控件,用户可以输入和编辑多行文本。 1.5 QPlainTextEdit多行文本:与...

Global site tag (gtag.js) - Google Analytics