時鐘本身使用paintevent函式進行繪製,使用timerevent進行定時重新整理。
繪製時鐘,通過paintevent實現,包括:時鐘背景,表盤,刻度線,數字以及時針,分針,秒針。
使用timerevent定時重新整理,設定重新整理時間為1000毫秒(1秒)
void dialog::paintevent(qpaintevent* event)
//十二個數字,在這一過程中可以對半徑以及中心微調使得數字更整齊
int r=143;
for(int i=1;i<13;i++)
//將秒針的終點與timerevent關聯,讓秒針隨著時間的呼叫動起來
int i;
double x,y;
for( i=0;i<60;i++)
painter.drawline(260,260,x,y);//秒針
painter.drawline(260,260,290,150);//分針
painter.drawline(260,260,271,171);//時針
}
void dialog::timerevent(qtimerevent* event)
#include "dialog.h"
#include "ui_dialog.h"
#include#include#include#define pi 3.1415926
dialog::dialog(qwidget *parent)
: qdialog(parent)
, ui(new ui::dialog)
dialog::~dialog()
int t;
void dialog::paintevent(qpaintevent* event)
//十二個數字,在這一過程中可以對半徑以及中心微調使得數字更整齊
int r=143;
for(int i=1;i<13;i++)
//將秒針的終點與timerevent關聯,讓秒針隨著時間的呼叫動起來
int i;
double x,y;
for( i=0;i<60;i++)
painter.drawline(260,260,x,y);//秒針
painter.drawline(260,260,290,150);//分針
painter.drawline(260,260,271,171);//時針
Qt 模擬時鐘
qt中有乙個模擬時鐘的例題,其主要實現的功能只有時針和分針,以及時鐘的那些刻度線。博主在其基礎上多增加了秒針,以及數字的顯示。同時,對其中小部分進行修改。本例題主要是了解和練習使用qtimer類。本例題屬於還是比較簡單的,量也是很少。具體的 和解釋可以檢視git 基本知識點都有注釋 中的analog...
Qt動態時鐘
使用qpainter和qtimer製作乙個簡易的動態時鐘。dialog.h protected 宣告繪圖的事件處理函式 void paintevent qpaintevent event dialog.cpp include dialog.h include ui dialog.h include ...
基於FPGA的跨時鐘域訊號處理 同步設計的重要
fpga 跨時鐘域訊號 非同步時鐘 上次提出了乙個處於非同步時鐘域的mcu與fpga直接通訊的實現方式,其實在這之前,特權同學想列舉乙個非同步時鐘域 現的很典型的問題。也就是要用乙個反例來說明沒有足夠重視非同步通訊會給整個設計帶來什麼樣的危害。特權同學要舉的這個反例是真真切切的在某個專案上發生過的,...