娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

4412開發板Qt定時器-實驗步驟和部分代碼

發布者:心有歸屬最新更新時間:2025-04-07 來源: cnblogs關鍵字:4412開發板 手機看文章 掃描二維碼
隨時隨地手機看文章

實驗目標:實現計時器功能,并且點擊打點按鈕將當前時間打印出來。
用到的類有 QTimer 和 QTime,QTimer 是一個計時器類,相當于秒表,QTimer 是一個時間類,相當于手表。
一:實驗步驟(迅為4412開發板
步驟一:界面布局:
拖拽組件,在屬性編輯欄設置大小,然后選中按鈕,點擊水平布局;

在屬性編輯欄設置 Label 的最小高度為 50,選中全部組件,點擊柵格布局,如圖:

根據實際情況調整大小,更改對象名后如下圖:

步驟二:創建計時器類對象 timer 和時間類 time,設置初始時間為 0。

1
2
3
4
5
6
7
8
class TimerP : public QMainWindow
{
Q_OBJECT
public:
explicit TimerP(QWidget *parent = 0); ~TimerP();
QTimer timer;
QTime time;
.......... };


步驟三:開啟計時器對象,設置定時時間,時間到后會發出 timeout() 信號,綁定此信號和自定義的槽函數 timeOut_Slot()。
void start(int msec);
函數功能:開啟定時器,時間到后發出 timeout 信號,并重新計時。
參數 msec 含義:定時時間,單位毫秒。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
TimerP::TimerP(QWidget *parent) :
QMainWindow(parent), ui(new Ui::TimerP)
{
ui->setupUi(this);
//信號 timeout 與槽函數綁定
connect(&timer,SIGNAL(timeout()),this,SLOT(timeOut_Slot()));
time.setHMS(0,0,0,0);
ui->showTime->setText('00:00:00:000');
}
/**開始定時
*/
void TimerP::on_starBu_clicked()
{
timer.start(3);
}

  

步驟四:槽函數 timeOut_Slot()內處理時間類對象,使每次計時時間結束后,時間對象能增加相同的時間,實現計時功能。
QTime addMSecs(int ms) const;
參數 msec 含義:增加的時間值,單位毫秒。
函數功能:返回一個當前時間對象之后 ms 毫秒之后的時間對象。

1
2
3
4
5
6
7
8
9
/*
* 計時
*/
void TimerP::timeOut_Slot()
{
//qDebug('timt out');
time = time.addMSecs(3);
ui->showTime->setText(time.toString('hh:mm:ss.zzz'));
}

  

步驟五:打點記錄功能,使用全局變量記錄排名,并顯示到界面。

1
2
3
4
5
6
7
8
9
10
11
/*
* 記錄
*/
void TimerP::on_bitBu_clicked()
{
QString temp;
i=i+1;
temp.sprintf('%d: ',i);
ui->bitTime->append(temp);
ui->bitTime->append(time.toString('hh:mm:ss.zzz'));
}


二:部分代碼

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
timerp.h:
class TimerP : public QMainWindow
{
Q_OBJECT
public:
explicit TimerP(QWidget *parent = 0); ~TimerP();
QTimer timer;
QTime time;
private slots:
void on_starBu_clicked();//開始計時按鈕槽函數
void timeOut_Slot();//定時時間到槽函數
void on_closeBu_clicked();//關閉按鈕槽函數
void on_resetBu_clicked();//重置按鈕槽函數
void on_bitBu_clicked();//打點記錄按鈕槽函數
private:
Ui::TimerP *ui;
};
timerp.cpp:
#include
#include
static int i;
TimerP::TimerP(QWidget *parent) :
QMainWindow(parent), ui(new Ui::TimerP)
{
ui->setupUi(this);
connect(&timer,SIGNAL(timeout()),this,SLOT(timeOut_Slot()));
time.setHMS(0,0,0,0);
ui->showTime->setText('00:00:00:000');
}
TimerP::~TimerP()
{
delete ui;
}
void TimerP::on_starBu_clicked()
{
timer.start(3);
}
/*
* 處理時間類對象
*/
void TimerP::timeOut_Slot()
{
//qDebug('timt out');
time = time.addMSecs(3);
ui->showTime->setText(time.toString('hh:mm:ss.zzz'));
}
/*
* 關閉
*/
void TimerP::on_closeBu_clicked()
{
timer.stop();
i=0;
}
/*
* 重置
*/
void TimerP::on_resetBu_clicked()
{
timer.stop();
time.setHMS(0,0,0,0);
ui->showTime->setText('00:00:00:000');
ui->bitTime->clear();
i=0;
}
/*
* 記錄
*/
void TimerP::on_bitBu_clicked()
{
QString temp;
i=i+1;
temp.sprintf('%d: ',i);
ui->bitTime->append(temp);
ui->bitTime->append(time.toString('hh:mm:ss.zzz'));
}


運行結果:


關鍵字:4412開發板 引用地址:4412開發板Qt定時器-實驗步驟和部分代碼

上一篇:迅為4412開發板Qt網絡編程-UDP實現服務器和客戶端
下一篇:迅為-iMX6ULL開發板--C程序調用shell

推薦閱讀最新更新時間:2025-04-11 10:11

進步一點點丨迅為4412開發板Linux內核開發基礎
1 Linux 體系結構 如下圖所示,Linux 體系結構,從大的方面可以分為用戶空間(User Space)和內核空間(Kernel Space)。 用戶空間中包含了 C 庫,用戶的應用程序。在某些體系結構圖中還包含了 shell,當然 shell 腳本也是Linux 體系中不可缺少的一部分。 內核空間包括硬件平臺、平臺依賴代碼、內核、系統調用接口。 在任何一個現代操作系統中,都是分層的。為什么需要分層呢? 從程序員的角度分析,將 linux 底層和和應用分開,將 linux 底層和應用分開,做應用的做應用,做底層的做底層,各干各的。經濟學的基本原理是,分工產生效率。 從安全性的角度分析,是為了保護內核。現代 CPU 通常都實
[單片機]
進步一點點丨迅為<font color='red'>4412</font><font color='red'>開發板</font>Linux內核開發基礎
iTOP-4412開發板-使用PartitionManager分區之后tf卡無法識別
本文檔介紹的iTOP-4412開發板丨iTOP-4418開發板丨IMX6開發板丨使用PartitionManager分區之后tf卡無法識別 tf卡使用 PartitionManager 軟件分區后,在Windows上可能出現無法識別的情況。 tf卡分區之后,Windows下無法識別,并不影響系統的燒寫,用戶可以按照手冊上的方 法在 Ubuntu 上正常使用,按照正常的燒寫流程即可。 說到定位和導航,大家容易有幾個誤區,請務必理解以下知識點。 下面介紹一下,在燒寫完畢之后,如何使 tf 卡在 Windows 上可以識別。 pc 上打開磁盤管理,計算機→管理→磁盤管理,如下圖所示。 如上圖所示,上方兩個是不顯示的盤
[單片機]
iTOP-<font color='red'>4412</font><font color='red'>開發板</font>-使用PartitionManager分區之后tf卡無法識別
iTOP-4412開發板-Android5.1- 移植教程
本文檔介紹itop-4412開發板上移植 Android5.1 的教程,包括:基礎知識、搭建編譯環境、編譯、repo 下載、燒寫等內容。 需要了解的基礎知識有 git 和 repo 工具,這兩個工具是程序員必備要會使用的工具;搭 建編譯環境是基于 Ubuntu14,這是由 Android 的版本決定的,另外需要至少 120G 的硬盤空間;另外還有使用 repo 下載源碼、編譯、燒寫等等。 1 Git 和 repo Git 是一個開源的分布式版本控制系統,用于敏捷高效地處理任何或小或大的項目。 Git 是 Linus Torvalds(和內核發明人是同一個人)為了幫助管理 Linux 內核開發而開發 的一個開放源碼的版本控制軟件,
[單片機]
iTOP-<font color='red'>4412</font><font color='red'>開發板</font>-Android5.1- 移植教程
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 二手房| 海南省| 通江县| 开平市| 苍南县| 高雄县| 无极县| 奇台县| 荆门市| 修水县| 旬邑县| 上虞市| 罗平县| 淮阳县| 新和县| 邵武市| 青神县| 辽阳市| 东源县| 邳州市| 潮安县| 南木林县| 根河市| 湖北省| 思茅市| 宁蒗| 烟台市| 长葛市| 海兴县| 长宁区| 永安市| 宣城市| 安远县| 镶黄旗| 锡林郭勒盟| 文成县| 莫力| 科尔| 渝中区| 原阳县| 卢氏县|