使用qpainter和qtimer製作乙個簡易的動態時鐘。
dialog.h**:
protected
://宣告繪圖的事件處理函式
void
paintevent
(qpaintevent*event)
;
dialog.cpp**:
#include
"dialog.h"
#include
"ui_dialog.h"
#include
#include
#include
#include
#include
dialog::
dialog
(qwidget *parent)
:qdialog
(parent),ui
(new ui::dialog)
dialog::
~dialog()
void dialog::
paintevent
(qpaintevent*event)
else
transform.
rotate(6
);painter.
setworldtransform
(transform);}
//重置矩陣,實現時針的轉動
transform.
reset()
; transform.
translate
(width()
/2,height()
/2);
transform.
scale
(side/
480.0
,side/
480.0);
//時針旋轉
transform.
rotate(30
*(time.
hour()
+(time.
minute()
+time.
second()
/60)/
60)-90
);painter.
setworldtransform
(transform)
;//時針寬度為9公釐
pen.
setwidth(9
);painter.
setpen
(pen)
;//繪製時針
painter.
drawline(-
10,0,
120,0)
;//重置矩陣,實現分針的轉動
transform.
reset()
; transform.
translate
(width()
/2,height()
/2);
transform.
scale
(side/
480.0
,side/
480.0);
transform.
rotate(6
*(time.
minute()
+time.
second()
/60)-
90); painter.
setworldtransform
(transform)
; pen.
setwidth(7
);painter.
setpen
(pen)
; painter.
drawline(-
15,0,
160,0)
;//重置矩陣,實現秒針的轉動
transform.
reset()
; transform.
translate
(width()
/2,height()
/2);
transform.
scale
(side/
480.0
,side/
480.0);
transform.
rotate(6
*time.
second()
-90);
painter.
setworldtransform
(transform)
; pen.
setwidth(5
);painter.
setpen
(pen)
; painter.
drawline(-
20,0,
200,0)
;}
新增背景圖後,效果圖如下: Qt 模擬時鐘
qt中有乙個模擬時鐘的例題,其主要實現的功能只有時針和分針,以及時鐘的那些刻度線。博主在其基礎上多增加了秒針,以及數字的顯示。同時,對其中小部分進行修改。本例題主要是了解和練習使用qtimer類。本例題屬於還是比較簡單的,量也是很少。具體的 和解釋可以檢視git 基本知識點都有注釋 中的analog...
畫動態時鐘
import cv2 import math import datetime import numpy as np margin 5 上下左右邊距 radius 220 圓的半徑 center center x,center y 225,225 圓心 1.新建乙個畫板並填充成白色 img np.ze...
QT實現 電子時鐘
2.時鐘視窗 3.執行效果圖 簡介 1.主視窗 menu.件 ifndef menu h define menu h include include include class menu public qwidget endif menu h menu.cpp檔案 include menu.h in...