首页 > 其他分享 >qt输入控件限制输入类型

qt输入控件限制输入类型

时间:2024-03-07 10:14:39浏览次数:18  
标签:控件 qt 验证 comboBox index input 输入

限制输入类型

有两个控件,根据第一个控件的类型,限制第二个控件可以输入的值

代码

QComboBox comboBox;
comboBox.addItem("字符串");
comboBox.addItem("数字");
layout.addWidget(&comboBox);

// 连接信号与槽
QObject::connect(&comboBox, QOverload<int>::of(&QComboBox::currentIndexChanged), [&](int index){
    if(index == 0) { // 如果选择的是字符串
        input.setValidator(nullptr); // 清除之前的验证器
        // 设置字符串验证器
        input.setInputMask(""); // 清除之前的输入掩码
    } else if(index == 1) { // 如果选择的是数字
        // 创建整数验证器
        QIntValidator *validator = new QIntValidator(&input);
        // 设置验证范围
        validator->setRange(-10000, 10000);
        input.setValidator(validator); // 设置验证器
        input.setInputMask(""); // 清除之前的输入掩码
    }
});

标签:控件,qt,验证,comboBox,index,input,输入
From: https://www.cnblogs.com/AngleLin/p/18058259

相关文章

  • MQTT over WSS
    什么是MQTT?-MQTT协议简介-AWShttps://aws.amazon.com/cn/what-is/mqtt/什么是MQTToverWSS?MQTToverWebSockets(WSS)是一种MQTT实施,用于将数据直接接收到Web浏览器中。MQTT协议定义了一个JavaScript客户端来为浏览器提供WSS支持。在这种情况下,该协议照常工......
  • Qt/C++音视频开发68-检查是否含有B帧/转码推流/拉流显示/监控拉流推流/海康大华宇视监
    一、前言为什么需要判断视频文件是否含有B帧,这个在推流的时候很容易遇到这个问题,一般来说,没有B帧的视频文件,解码后的数据帧pts和dts都是顺序递增的,而有B帧的则未必,可能有些需要先解码后面显示,B帧也是双向预测图像B,对它的编码,即是对它前后帧的像素值之差进行编码,B帧是双向差别帧,也......
  • Qt QMessageBox::information 自定义按钮
    一.基本简介在使用QT的弹窗提示时,习惯使用QMessageBox::informationQMessageBox::questionQMessageBox::warningQMessageBox::critical一般对于按钮,是使用系统提供的默认按钮例如:QMessageBox::Ok|QMessageBox::Cancel等二.如果要自己定义按钮,使用自定义的按钮文字,该怎么......
  • C++ Qt开发:运用QThread多线程组件
    Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用QThread组件实现多线程功能。多线程技术在程序开发中尤为常用,Qt框架中提供了QThread库来......
  • Qt QMessageBox的简单用法
    效果思路1//创建一个question弹出对话框,添加两个按钮:Yes和No2QMessageBox*box=newQMessageBox(QMessageBox::Question,"提示","确认删除''的信息吗?",QMessageBox::Yes|QMessageBox::No,this);3box->button(QMessageBox::Yes)->se......
  • 3562-Qt工程编译说明
       ......
  • Qt QVector数据清理和内存清理
    原因在处理大数据时,发现QVector直接用clear后台查看程序所占用的内存并没有下降QVector数据清理1QVector<int>example_vec;2example_vec.clear();QVector内存清理1QVector<int>example_vec;2example_vec.shrink_to_fit();//程序运行到此处时内存才被降下去QV......
  • Java 读取命令行输入
    在Java中,您可以使用Scanner类从命令行读取输入。这个类属于java.util包,因此在使用之前您需要导入该包。下面是一个如何从命令行读取输入的Java程序示例:importjava.util.Scanner;//导入Scanner类publicclassMain{publicstaticvoidmain(String[]args)......
  • (续)signal-slot:python版本的多进程通信的信号与槽机制(编程模式)的库(library) —— 强化学
    前文:signal-slot:python版本的多进程通信的信号与槽机制(编程模式)的库(library)——强化学习ppo算法库sample-factory的多进程包装器,实现类似Qt的多进程编程模式(信号与槽机制)——python3.12版本下成功通过测试......
  • Qt Creator 内存分析
    Ubuntu内存分析安装sudoapt-getinstallvalgrind打开Qtcreator->Analyze->valgrind内存分析器Memcheck会列出可能内存泄露的文件(有很多是误报需要仔细分辨)Window内存分析下载Heobhttps://github.com/ssbssa/heob/releases解压到英文目录.exe打开Qtcreator->An......