zoukankan      html  css  js  c++  java
  • Qt QpushButton 实现长按下功能

    做项目需要一个按钮具备长时间按下的功能,才发现Qt原始的按钮是没有这个功能,不过Qt的原生按钮是存在按下和释放信号的,有了这两个信号,再来实现按钮长时间被按下,这就简单了,看下动画演示。

    录成GIF效果不咋明显了。其实我实现按钮长时间被按下就是增加的定时器,当按钮被按下时,激活定时器,并每隔一段时间出发clicked事件,这样就差不多实现了这个功能。

    看下代码

    /*
     * +号按下
     */
    void MainWindow::on_pushButton_4_pressed()
    {
        if(!timer1)
        {
            timer1 = new QTimer();
            connect(timer1,&QTimer::timeout,this,&MainWindow::on_pushButton_4_clicked);
        }
        timer1->start(100);
    }
    /*
     * 加号释放
     */
    void MainWindow::on_pushButton_4_released()
    {
        timer1->stop();
    }

    这里请大家忽略我的命名,这个程序简单到功能只有一个,所有直接使用了Qt生成的名字。不过在正式的开发中,还是建议给每一个变量起一个有意义的明细,这样你好我好大家好。

    以上就是今天的内容。

  • 相关阅读:
    shell:读取文件的每一行内容并输出
    shell中set命令
    shell中declare命令
    MySQL MID()函数用法
    mysql的取整函数
    二分查找算法
    zookeeper安装和使用
    Redis 集群--------Redis-cluster
    ehcahe + redis 实现多级缓存
    Redis事物
  • 原文地址:https://www.cnblogs.com/DreamDog/p/9158862.html
Copyright © 2011-2022 走看看