如何实现QT按钮闪烁

这篇具有很好参考价值的文章主要介绍了如何实现QT按钮闪烁。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

新建一个weight application工程

如何实现QT按钮闪烁

 

在ui界面放置一个label控件 两个pushButton按钮,通过改变label样式改变他的颜色

如何实现QT按钮闪烁

 

首先在mainwindow.h中加上QTimer的头文件,然后写一个槽函数接受定时器发送的信号,创建一个私有权限的Qtimer对象,然后将两个按钮转到槽。代码实现如下;

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QTimer>

QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private slots:


private slots:
    void slotTimerout();
    void on_pushButton_clicked();

    void on_pushButton_2_clicked();

private:
    Ui::MainWindow *ui;
    QTimer *timer;
};
#endif // MAINWINDOW_H

在构造函数中初始化timer

然后连接信号与槽,在槽函数中判断是否是隐藏状态,是就展示,不是就隐藏,在开始按钮调用定时开始函数,在关闭按钮判断是否开始定时是就停止,然后展示,代码如下:文章来源地址https://www.toymoban.com/news/detail-510779.html

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>

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

    connect(timer, &QTimer::timeout, this, &MainWindow::slotTimerout);


}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::slotTimerout()
{
    if (ui->label->isHidden())
    {
        ui->label->show();
    }
    else
    {
        ui->label->hide();
    }

}


void MainWindow::on_pushButton_clicked()
{

    timer->start(300);
}

void MainWindow::on_pushButton_2_clicked()
{
    if (timer->isActive())
    {
        timer->stop();
    }
    ui->label->show();
}

到了这里,关于如何实现QT按钮闪烁的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • Qt 遍历多个按钮单击信号带参数,绑定到一个槽

    Qt5最新特性、最高效写法 只查找一级子控件 QList listBtn = ui-gbSel-findChildren(QString(),Qt::FindDirectChildrenOnly); for(int i=0;ilistBtn.count();++i)//++i比i++效率高,i++需要创建临时变量加1 { connect(listBtn[i],QPushButton::clicked,[=]{selCX(i);}); } QT5 写法,也是利用lambda表达式来实现 for(int i=0;igbSel-layout

    2024年01月18日
    浏览(46)
  • Jenkins如何新建一个项目

    话不多,以版本 Jenkins 2.350为例,来创建一下新项目 首先需要登录Jenkins 比如:admin/123456 登录成功后找到新建item并点击   如果需要定时去跑,可以配置一下 H H(9-18)/2 * * 1-5    

    2024年02月09日
    浏览(53)
  • 如何新建一个java项目

    第一步:File→New→Project→ Empty Project(一定要记得点Empty Project) 第二步:File→New→**Moudle(注意此时不选Project)**→Java→next (此步完成后会出现左侧列表中会出现 scr ) 第三步:由于建的是空的项目,还需要 安装环境 (若不设置,后面写好代码后就没有绿色的箭头,则不能执行

    2023年04月20日
    浏览(45)
  • Adobe Photoshop 2020 新建菜单频繁闪烁 Mac版

    小伙伴们安装了 Adobe Photoshop 2020 后经常会问我新建画布闪烁以及创建按钮无法点击应该怎么解决,今天小编就教大家设置一下。 解决方法一: 1、首先打开ps,如图所示,点击左上角 Photoshop-首选项-常规界面 2、在 首选项 页面的 常规 选项卡中,找到 使用旧版\\\"新建文档\\\"界面

    2024年02月13日
    浏览(46)
  • QT学习(二)——新建项目出现黄标感叹号如何解决

     出现这种情况很有可能是在选择套件kit Selection 时选择MSVC,但是没有装MSVC调试器导致  MSVC: 即Microsoft Visual C++ Compiler,是微软自己的VC编译器。 MinGW: 即Minimalist GNU for Windows,是将GNU开发工具移植到Win32平台下的产物,即一套Windows上的GNU工具集。 最简单的解决方法,新建一个项

    2024年02月11日
    浏览(67)
  • 如何用python新建一个文件,python如何建立新文件

    这篇文章主要介绍了如何通过python新建一个文件中的文件,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。 前言: 计算机操作系统是以文件为单位对数据进行管理的。文件是指存储在某种介质上的数据

    2024年02月20日
    浏览(47)
  • QT 完美实现圆形按钮

    QT 版本:5.6.0 官方的按钮有些普通,如果我们想要换成自己喜欢的按钮而却无从下手,那么请继续往下阅读(皮一下)。 首先,可以在网络上搜索一下自己喜欢的按钮图形(或者可以自行绘制),我以下面的图形为例: 创建好工程,向工程中加入资源文件: 在资源文件中加

    2023年04月13日
    浏览(36)
  • 【FPGA】时序逻辑电路——基于计数器实现一个以1秒频率闪烁的LED灯

    1 D触发器 分析: 特性:输出端Q只在CK处于上升沿的时候变化 图中波形的形成过程: 当D处于高电平时,CK未处于上升沿时,Q仍处于低电平 当CK来到上升沿,Q需要根据D发生变化,由于D是高电平,所以Q要从低电平变化成高电平 D从高电平变化成低电平,但是此时CK未来到上升沿

    2024年02月09日
    浏览(46)
  • QT实现按钮开关Form窗体的效果

    实现效果叙述如下: MainWindow 中的按钮实现 Form 窗体的开关, Form 窗体的 关闭 按钮禁用掉,只允许使用窗体按钮进行,且关闭 MainWindow 按钮时 Form 窗体随之关闭。 注意: 要想实现关闭 MainWindow 按钮时 Form 窗体随之关闭, Form 窗体的 close() 在 MainWindow 的析构函数中无法实现,

    2024年02月15日
    浏览(36)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包