日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

mfc实现秒表小项目

發布時間:2025/3/21 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mfc实现秒表小项目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

項目截圖:

先設計一個Timer類,用于計時,放在頭文件Timer.h里面class Timer { public:Timer();~Timer();Timer operator++(){s++;if (s >= 60){s -= 60;m++;if (m >= 60){m -= 60;h++;if (h >= 60){h -= 60;}}}return *this;}Timer operator++(int){Timer old = *this;++(*this);return old;}int getH() const{return h;}int getM() const{return m;}int getS() const{return s;} private:int h, m, s; };Timer::Timer() {h = m = s = 0; }Timer::~Timer() { }//--------------------------------------------------------------------- //創建一個線程回掉函數用于計時: DWORD WINAPI clock1_proc(LPVOID lparam) {Timer t;CString s;while (true){t++;Sleep(1000);s.Format(_T("%02d:%02d:%02d"), t.getH(), t.getM(), t.getS());((CStatic*)lparam)->SetWindowTextW(s);} }void CClockDlg::OnBnClickedStart()//開始按鈕的代碼 {// TODO: 在此添加控件通知處理程序代碼if (hClock1)//從暫停里恢復,hClock1表示第一個clcok的線程句柄,{ResumeThread(hClock1);}else{hClock1 = CreateThread(0, 0, clock1_proc, &this->hClock1Ctl, 0, NULL);//新建一個clock線程}}void CClockDlg::OnBnClickedPause()//暫停按鈕的代碼 {// TODO: 在此添加控件通知處理程序代碼if (hClock1){SuspendThread(hClock1);} }void CClockDlg::OnBnClickedReset()//重置按鈕的代碼 {// TODO: 在此添加控件通知處理程序代碼if (hClock1){TerminateThread(hClock1, 0);hClock1Ctl.SetWindowTextW(_T("00:00:00"));hClock1 = NULL;} }

源碼下載:https://pan.baidu.com/s/134Qn9pBb0Hq32h7A_cQqzg

總結

以上是生活随笔為你收集整理的mfc实现秒表小项目的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。