MFC tab控制元件不同頁面間的變數傳遞和函式呼叫
阿新 • • 發佈:2019-01-26
問題描述:MFC程式中tab控價下有三個子頁面Page1、Page2、Page3,Page2上有Text控制元件IDC_EDIT1和成員函式Fun1,現在Page3中想獲取Page2上Text控制元件中輸入的值,和呼叫Page2的成員函式Fun1
方法:
Page3中包含標頭檔案:
#include "Page2.h"
在Page3中獲取Page2 Text控制元件值:
<pre name="code" class="cpp">CTabCtrl *tab=(CTabCtrl*)GetParent();//獲取父視窗即tab控制元件指標 CWnd *cwnd=tab->GetWindow(GW_CHILD);//獲取第一個子視窗指標,即Page1 CWnd *cwnd1=cwnd->GetWindow(GW_HWNDNEXT);//獲取第一個子視窗後的視窗,即Page2 cwnd1->GetDlgItemText(IDC_EDIT1,str);//獲取Page2上Text控制元件的值
在Page3中呼叫Page2的成員函式:
CTabCtrl *tab=(CTabCtrl*)GetParent();
CPage2 *page2=(CPage2*)tab->GetWindow(GW_CHILD)->GetWindow(GW_HWNDNEXT);
page2->Fun1();//呼叫Page2的成員函式