第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

怎么樣在全局函數(shù)中調用UpdateData(FALSE)?

怎么樣在全局函數(shù)中調用UpdateData(FALSE)?

飲歌長嘯 2019-02-05 10:06:06
新建一個基于對話框的應用程序,然后在Dialg類中定義一個全居函數(shù),在全居函數(shù)中定一個自加的方法,每秒+1,在Dlg類中定義的編輯框與全局函數(shù)相關聯(lián),在全局函數(shù)中調用CMy14MFC_6Dlg::UpdateData(FALSE);然后在對話框中的編輯控件中顯示出來??僧斣谌趾瘮?shù)中調用CMy14MFC_6Dlg::UpdateData(FALSE)顯示錯誤。正確的方法應該怎樣調用呢?或者有其它什么方法?由于這個程序要用到Sleep(),所以采用的是多程序.我是新手學VC,里面打錯很多,沒仔細檢查,不好意思,是我說錯了,是在類外定義的,多線程.不過問題我已經(jīng)解覺了,用SendMessage給主窗口發(fā)送消息,然后在消息中用定義.
查看完整描述

3 回答

?
蠱毒傳說

TA貢獻1895條經(jīng)驗 獲得超3個贊

暫且不管你怎么定義的,先說這個UpdateData()。這個函數(shù)是
CWnd類的一個成員函數(shù),不是一個靜態(tài)函數(shù),所以不能像你那樣,用CMy14MFC_6Dlg::UpdateData(FALSE);這種方式調用。只有在類的內部調用(即類成員函數(shù)調用),或通過類的實例對象調用。

最后一句“由于這個程序要用到Sleep(),所以采用的是多程序.”也很難理解,我還是第一次聽說“多程序”這個詞。
暫且我就把它當成是多線程吧,你說你要用到 Sleep() 這個函數(shù),我想你是想實現(xiàn)那個一秒自加一次的功能吧,你用一個循環(huán),加一次,然后 Sleep 一秒,對吧。
其實這個功能可以,而且應該用 Timer實現(xiàn)。

查看完整回答
反對 回復 2019-03-24
?
月關寶盒

TA貢獻1772條經(jīng)驗 獲得超5個贊

CXXXDLG居然能::UPdateData這樣調用,厲害,難道一個類只能有一個實力打開一個擁有同樣數(shù)據(jù)的對話框,VC不可能將這函數(shù)寫成靜態(tài)的UPDATEDATA
你要想再外弄,得發(fā)MESSAGE自定義消息,讓類里自己調用用ON_MESSAGE紅設調用函數(shù),想來你開發(fā)語言的不用那么復雜只要:
"多程序運行"
你的超級智能程序!

查看完整回答
反對 回復 2019-03-24
?
汪汪一只貓

TA貢獻1898條經(jīng)驗 獲得超8個贊

用一個線程就行了
在創(chuàng)建線程時,把對話框的指針做為參數(shù)
在線程實現(xiàn)里面,把參數(shù)轉為對話框指針,有了指針就可以調用了
///////////////
聲明
public:
static DWORD WINAPI UpdateDataThread(LPVOID);///注意聲明為static

定義
DWORD WINAPI CMy14MFC_6Dlg::UpdateDataThread(LPVOID lp){
CMy14MFC_6Dlg* dlg = (CMy14MFC_6Dlg*)lp;
while(true){
dlg->UpdateData(FALSE);
Sleep(1000);
}
return 0;
}

CMy14MFC_6Dlg::XXXXX(){///在某函數(shù)里面創(chuàng)建一個線程,關鍵是把this做為參數(shù)傳進去
CreateThread(NULL,0,LPTHREAD_START_ROUINE(&CMy14MFC_6Dlg::UpdateDataThread),this,0,0);
}

//不好意思,本人不是高手,以上是憑腦寫的,不知道有沒有錯誤,請原諒



查看完整回答
反對 回復 2019-03-24
  • 3 回答
  • 0 關注
  • 1067 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號