程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> MFC通過按鈕控制編輯框是否顯示系統時間(動態顯示)

MFC通過按鈕控制編輯框是否顯示系統時間(動態顯示)

編輯:C++入門知識

MFC通過按鈕控制編輯框是否顯示系統時間(動態顯示)


1.在dlg.h中public

bool flag;

static UINT time(void *param);

2.在構造函數中

flag=false;


3.在按鈕的生成函數中

if(flag)
{
flag=false;
//GetDlgItem(IDC_ShowTime)->SetWindowTextW(_T(" "));
/*m_showtime.SetWindowText(_T(""));
m_showtime.SetFocus();*/
//UpdateData(true);
CEdit* pedt = (CEdit*)GetDlgItem(IDC_ShowTime);
pedt->SetWindowText(_T(""));////////////此處有問題,不能清空編輯框,或者說清空之後又恢復了。

//不知道怎麼回事,如果有人知道,請告訴我。
}
else
{
AfxBeginThread(time,this);//,THREAD_PRIORITY_IDLE);

flag=true;

}

4.

UINT CmyDlg::time(void *param)
{
CmyDlg *dlg = (CmyDlg*)param;
CEdit *SysTimeBox = (CEdit*)dlg->GetDlgItem(IDC_ShowTime);//IDC_ShowTime為編輯框ID
CString str;
while (dlg->flag)
{
Sleep(1000);
CTime time = CTime::GetCurrentTime();
str = time.Format(_T("%Y-%m-%d %H:%M:%S %A"));
SysTimeBox->SetWindowTextW(str);
}
return 0;
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved