執行緒攪亂messagebox? delphi / windows sdk/api
問題現場:(大概意思哈)
switch(messagebox)
case:mryes
case:mrno
case:mrcancel
exit;
單步執行這一段,選擇yes,程式進入thread1=new tmythread(),然後是tmythread建構函式,然後再按f7/f8,問題就出來了:
程式跳到了case:mrno裡面開始執行「其他的動作」!*_*~~~~~~~
怎麼回事呢?怎麼避免?
up沒遇到過,估計是createthread改變了現場變數。
解決方法:
1 把 thread1=new tmythread();放到乙個新的過程裡,
2 case:mryes 放到最後。
3 tx=messagebox;
switch(tx)
;
看看行不行?
謝拉,忘寫break了
bs 啊,害我死了好多腦細胞。
MessageBox常用方法
一 函式原型及引數 function messagebox hwnd hwnd text,caption pchar type word integer hwnd 對話方塊父視窗控制代碼,對話方塊顯示在delphi窗體內,可使用窗體的handle屬性,否則可用0,使其直接作為桌面視窗的子視窗。tex...
MessageBox的常見用法
一 函式原型及引數 function messagebox hwnd hwnd text,caption pchar type word integer hwnd 對話方塊父視窗控制代碼,對話方塊顯示在delphi窗體內,可使用窗體的handle屬性,否則可用0,使其直接作為 桌面視窗的子視窗。te...
MessageBox的常見用法
一 函式原型及引數 function messagebox hwnd hwnd text,caption pchar type word integer hwnd 對話方塊父視窗控制代碼,對話方塊顯示在delphi窗體內,可使用窗體的handle屬性,否則可用0,使其直接作為桌面視窗的子視窗。tex...