程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> mfc-MFC 將button控件SetParent()到另一個窗口後,事件響應混亂問題

mfc-MFC 將button控件SetParent()到另一個窗口後,事件響應混亂問題

編輯:編程解疑
MFC 將button控件SetParent()到另一個窗口後,事件響應混亂問題

現有:
窗口A,裡面有button1,按鈕事件是AfxMessageBox(L"我是窗口A的按鈕");
窗口B,裡面有button1。按鈕事件是AfxMessageBox(L"我是窗口B的按鈕");

使用以下代碼將button1發送到窗口B裡面去:
this->GetDlgItem(IDC_BUTTON1)->SetParent(FromHandle(hwnd_B));

已經成功將窗口A的button1發送到窗口B中!
但為何發送過去之後的button1事件失效了?窗口B中的兩個button都是執行AfxMessageBox(L"我是窗口B的按鈕");的代碼?
應該如何寫代碼,讓發送過去的按鈕依然執行"我是窗口A的按鈕"?

最佳回答:


控件通知消息都是發給父窗口的,所以轉移後當然發給窗口A,你這種情況,應該直接派生BUTTON類,在BUTTON類裡處理反射的通知消息,就跟哪個父窗口無關了,因為無論誰是父窗口都會把這些通知消息反射給控件自己處理

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