前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >03 QT基本控件和功能类

03 QT基本控件和功能类

作者头像
天天Lotay
发布2023-10-15 18:33:49
1360
发布2023-10-15 18:33:49
举报
文章被收录于专栏:嵌入式音视频嵌入式音视频

一 进度条 、水平滑动条 垂直滑动条

当在QT中,在已知类名的情况下,要了解类的构造函数 常用属性 及 信号和槽 常用api

特征:可以获取当前控件的值和设置它的当值 ---- int

代码语言:javascript
复制
ui->progressBar->setValue(value); //给进度条设置一个整型值
ui->progressBar->value();//获得当前进度条的值
ui->progressBar->setMaximum(255);
ui->progressBar->setMinimum(0);

1)QProgress

在这里插入图片描述
在这里插入图片描述

常用信号:

在这里插入图片描述
在这里插入图片描述

2)QSlider

在这里插入图片描述
在这里插入图片描述

常用的信号:

在这里插入图片描述
在这里插入图片描述

二 按钮类

点击按钮:QPushButton QToolButton 单选按钮:QRadioButton 复选按钮: QCheckBox

对于按钮类来说,使能属性 ---- enable ----> setEnable

代码语言:javascript
复制
   ui->pushButton->setEnabled(false);
    bool ok = ui->pushButton->isEnabled();

一个控件两种状态的实现代码:

代码语言:javascript
复制
void MainWindow::on_pauseButton_clicked()
{
     qDebug() << "------";
     if(!isState)
     {
         ui->pauseButton->setText("继续");
         isState = true;
     }else {
         ui->pauseButton->setText("暂停");
        isState = false;
    }

}

方式二

代码语言:javascript
复制
if(ui->pauseButton->text() == "继续")
{
    ui->pauseButton->setText("暂停");
}else if(ui->pauseButton->text() == "暂停")
{
    ui->pauseButton->setText("继续");
}

三 定时器 — QTimer

3.1 基本概念
在这里插入图片描述
在这里插入图片描述
3.2 定时器基本使用
  1. 第一步:包含头文件和创建定时器对象
代码语言:javascript
复制
  #include <QTimer>
  QTimer* timer; //并且在构造函数中初始化,并且在构造函数中,建立与timeout信号的槽函数
  1. 第二步:创建槽函数,并绑定timeout信号
代码语言:javascript
复制
connect(timer,&QTimer::timeout,this,&自定义类名::槽函数名);//槽函数名定义
  1. 第三步:启动定时器,并指定间隔发送信号的时间,比如:1s
代码语言:javascript
复制
  timer->start(1000); //单位为毫秒级

或者

代码语言:javascript
复制
  timer->setInterval(1000);
  timer->start();
  1. 第四步:停止定时器
代码语言:javascript
复制
timer->stop()
3.3 案例:定时器实现计数器功能
3.3 案例:手机APP启动时,播放广告(3S)
代码语言:javascript
复制
Static Public Members
voidsingleShot(int msec, const QObject *receiver, const char *member)
  1. 参数一:int msec — 延时时间 ms
  2. 参数二:const QObject *receiver ---- 信号的接收者
  3. 参数三:const char *member — 接收者的槽函数地址
代码语言:javascript
复制
  //在构造函数中,建立定时器的广告的相关事项
    QTimer::singleShot(3000, this,
     SLOT(startMainApp()));//设定时间到,才调用startMainApp函数

 void AdvWindow::startMainApp()
{
       //启动主程序
       MainWindow* mw = new MainWindow;
       mw->show();
       this->close();

}

四 在项目增加图片资源

图片格式:jpg ,png 图片的名字不是以数字开头

实现步骤:

  1. 第一步:在工程项目目录下,创建一个目录— image,并将图片拷贝到目录 下
  2. 第二步:右击项目 ---- > new —> 在弹出的对话框中,设置如下图所示。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

继续点击下一步,完成即可。

  1. 第三步:添加文件

在添加文件之前,要先设置一个前缀

在这里插入图片描述
在这里插入图片描述

设置完前缀后,再点击添加按钮,然后选择要添加的文件。

  1. 第四步:保存文件
在这里插入图片描述
在这里插入图片描述
  1. 第五步:给控件使用图片资源 — ui文件中使用
在这里插入图片描述
在这里插入图片描述
  1. 第六步,在代码中,使用图片资源
代码语言:javascript
复制
  ui->label->setStyleSheet("border-image: url(?developer/article/2342091/:/image/off.png);");
  1. 第七步:如何实现资源图片的再次添加
在这里插入图片描述
在这里插入图片描述
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一 进度条 、水平滑动条 垂直滑动条
  • 二 按钮类
  • 三 定时器 — QTimer
    • 3.1 基本概念
      • 3.2 定时器基本使用
        • 3.3 案例:定时器实现计数器功能
          • 3.3 案例:手机APP启动时,播放广告(3S)
          • 四 在项目增加图片资源
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
          http://www.vxiaotou.com