MFC中兩個不同視窗之間的資料互動
阿新 • • 發佈:2019-01-24
從MFC的一個視窗A控制元件中得到的資料要在另一個視窗B中進行顯示,首先要確保控制元件的資料儲存的變數在這兩個控制元件中都能使用,一般建議將該變數設為全域性變數。然後要將在A視窗的.CPP檔案中新增顯示函式即可。
1.全域性變數的設定:
建議個人最好自己建立一個”Global.h”和”Global.cpp”兩個標頭檔案:
1).在”Global.h”中對變數進行變數進行宣告;
例如:
extern CString Message;
2).在”Global.cpp”標頭檔案中對變數進行定義;
例如:
CString Message;
在使用該全域性變數的時候只需要在你使用的該全域性變數的.cpp檔案中包含“Global.h”即可。
2.新增顯示在B視窗控制元件顯示的程式碼:
在A視窗的.CPP檔案的對應函式中新增如下程式碼即可:
UpdateData(TRUE);
CDialog* p=(CDialog*)::AfxGetMainWnd();//主對話方塊指標
GetDlgItemText(IDC_EDIT2,Message);//獲取B視窗中控制元件的資料存到Message
p->SetDlgItemText(IDC_EDIT1,Message);//將Message中的資料顯示在IDC_EDIT1中
UpdateData(false);//將資料更新