qt 指示灯 状态灯 红绿灯 LED灯:使用QLabel实现

这篇具有很好参考价值的文章主要介绍了qt 指示灯 状态灯 红绿灯 LED灯:使用QLabel实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言
需要在界面上实时显示设备的状态,希望通过指示灯来显示,例如绿色代表正常,红色代表异常。

实现步骤
首先添加几个QLabel控件,下图添加了四个QLabel控件。对于QLabel,双击可以修改其text,在属性栏可以修改其objectName,修改led1、led2的objectName为label_led1、label_led2。

qt指示灯,qt,开发语言,c++

使用自定义函数setLED来实现LED灯。

 文章来源地址https://www.toymoban.com/news/detail-629546.html

// 该函数将label控件变成一个圆形指示灯,需要指定颜色color以及直径size
// color 0:grey 1:red 2:green 3:yellow
// size  单位是像素
setLED(QLabel* label, int color, int size)
{
    // 将label中的文字清空
    label->setText("");
    // 先设置矩形大小
    // 如果ui界面设置的label大小比最小宽度和高度小,矩形将被设置为最小宽度和最小高度;
    // 如果ui界面设置的label大小比最小宽度和高度大,矩形将被设置为最大宽度和最大高度;
    QString min_width = QString("min-width: %1px;").arg(size);              // 最小宽度:size
    QString min_height = QString("min-height: %1px;").arg(size);            // 最小高度:size
    QString max_width = QString("max-width: %1px;").arg(size);              // 最小宽度:size
    QString max_height = QString("max-height: %1px;").arg(size);            // 最小高度:size
    // 再设置边界形状及边框
    QString border_radius = QString("border-radius: %1px;").arg(size/2);    // 边框是圆角,半径为size/2
    QString border = QString("border:1px solid black;");                    // 边框为1px黑色
    // 最后设置背景颜色
    QString background = "background-color:";
    switch (color) {
    case 0:
        // 灰色
        background += "rgb(190,190,190)";
        break;
    case 1:
        // 红色
        background += "rgb(255,0,0)";
        break;
    case 2:
        // 绿色
        background += "rgb(0,255,0)";
        break;
    case 3:
        // 黄色
        background += "rgb(255,255,0)";
        break;
    default:
        break;
    }

    const QString SheetStyle = min_width + min_height + max_width + max_height + border_radius + border + background;
    label->setStyleSheet(SheetStyle);
}

在需要改变LED灯颜色的地方调用setLED即可。为了演示,我新建了MainWindow工程,在MainWindow类的构造函数中直接调用,运行程序时便会改变LED颜色。

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    setLED(ui->label_led1, 1, 16);
    setLED(ui->label_led2, 2, 16);
}

qt指示灯,qt,开发语言,c++

 

————————————————
版权声明:本文为CSDN博主「Fourier_1024」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Fourier_1024/article/details/113517982

 

到了这里,关于qt 指示灯 状态灯 红绿灯 LED灯:使用QLabel实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 路由器上的指示灯各有什么含义?无线路由器指示灯说明图解

    伴随着智能手机的流行,如今无线路由器也早已走进千家万户,而智能手机、平板以及笔记本等无线设备Wifi上网就主要靠无线路由器无线网络来提供。不过,有时候也会出现一些网络问题,导致电脑或者智能手机设备这个时候我们通常可以通过路由器指示灯来判断,路由器的

    2024年02月07日
    浏览(37)
  • 交通信号灯课程设计(红绿灯)

    一、设计指标 1.1对设计课题进行简要阐述        由一条主干道和一条支干道的汇合点形成十字交叉路口,为确保车辆安全、迅速地通行,在交叉路口的每个人口处设置了红、绿、黄三色信号灯。        (1)用红、绿、黄三色发光二极管作信号灯,用传感器或逻辑开关

    2024年02月09日
    浏览(38)
  • 基于OpenCV的红绿灯识别

    为了实现轻舟航天机器人实现红绿灯的识别,决定采用传统算法OpenCV视觉技术。 航天机器人的红绿灯识别主要基于传统计算机视觉技术,利用OpenCV算法对视频流进行处理,以获取红绿灯的状态信息。具体而言,该系统通过连接工控机摄像头读取视频流,将视频帧转换成HSV色彩

    2024年02月15日
    浏览(25)
  • 高德导航红绿灯为啥能读秒?

    文章来源:https://www.zhihu.com/question/545653479/answer/3098666967 每天工作其实就是负责自己片区的红绿灯,一大早就去校对时间,然后发布到后台。是的,统计出来的,而且还是人工统计,有误差请见谅 真的是很辛苦了!不过还是希望他们记录的时候好好记,因为有的路口真的不准

    2024年02月09日
    浏览(31)
  • 基于STM32的红绿灯设计

    基于protrus8设计电路原理图 先要思考明白十字路口红绿灯的逻辑 东西是一样的,南北是一样的。 东西红灯,南北就是绿灯,反之一样的,弄明白这些写代码就有思路了 中间的两个数码管是模拟真实红绿灯倒计时的用的,放置4个也行,但是为了方便观看就放一个了 下面放几

    2024年02月11日
    浏览(25)
  • 路由器指示灯怎么看?

    很多时候,我们不需要登录电脑或路由的管理界面,只通过路由器的指示灯就可以了解路由器的工作状态,本文和大家分享一下如何看懂路由器的指示灯 1、电源指示灯,持续稳定发光表示与电源连接正确 2、lNTERNET口指示灯,常亮表示已连接,有数据传输闪亮 3、无线状态指

    2024年02月07日
    浏览(33)
  • Winform自定义控件 —— 指示灯

             在开始阅读本文之前,如果您有学习创建自定义控件库并在其他项目中引用的需求,请参考: 在Visual Studio中创建自定义Winform控件库并在其他解决方案中引用 https://blog.csdn.net/YMGogre/article/details/126508042 目录 1、应用场景:  1.1、本文的应用场景:  2、所需资源: 

    2024年02月04日
    浏览(38)
  • 定时红绿灯(C51单片机)

    一.项目题目:利用中断处理制作的定时LED红绿灯系统 二.项目器件: 红色LED灯 绿色LED灯 黄色LED灯 100R电阻 电源 电容器 C51单片机 接地线 三.项目原理图 四.项目实现功能: 使用定时器/计数器T1工作方式1,采用中断方式控制P1口6个单片机串口,实现类似交通红绿灯功能

    2024年02月05日
    浏览(37)
  • 路由器指示灯不亮了怎么办 路由器上的信号指示灯不亮的解决办法总结

    最近,接到不少网友的反应。说自己的无线路由器信号指示灯不亮,刚开始以为是路由器坏额,后来检测发现不是路由器的问题。今天小编就总结一下导致这种情况可能存在的问题,当然额,不排除小编总结的方法不全面。呵呵! 路由器信号指示灯 一、信号指示灯不亮 信号

    2024年02月06日
    浏览(39)
  • 路由器指示灯有哪些含义?

    无线网络的需求越来越大,无线路由器也早已经进千家万户,智能手机、平板以及笔记本等无线设备的WIFI上网就主要靠无线路由器发送无线网络。无线网络有时候也会问题,导致电脑或者智能手机设备也会出现一些链接上问题,这个时候我们通常可以通过路由器指示灯来判断

    2024年02月08日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包