我是MFC新手,正在製作一個簡單的程序,它將不斷更新兩個編輯框。編輯框包含鼠標光標的x和y座標。程序只在開始按鈕被點擊時開始抓住光標座標,當點擊停止按鈕時它應該停止。但只要我點擊開始按鈕,整個窗口就會凍結。如何在MFC中連續運行不凍結窗口的函數?
這是我到目前爲止有:
//Way up high in the code:
#include <windows.h>
//way down low in the code
void CmfcpixelDlg::OnBnClickedButtonStart()
{
POINT p;
CString x;
CString y;
int px;
int py;
while(stop == false){
GetCursorPos(&p);
px = p.x;
//convert x coordinate to a CString
x.Format(L"%d", px);
//convert y coordinate to a CString
py = p.y;
y.Format(L"%d", py);
m_x.SetWindowTextW(x.GetBuffer());
m_y.SetWindowTextW(y.GetBuffer());
}
}
謝謝!這工作得很好,現在唯一的問題是光標座標只有在光標在撥號盒內時纔會顯示。無論光標在屏幕上的什麼位置,有沒有辦法獲得座標? – xcdemon05
@xcdemon你將不得不使用定時器回調或第二個線程來解決這個問題。 –