C++ MFC 其他函式獲得主對話方塊指標並使用成員的方法
阿新 • • 發佈:2018-12-11
AfxGetApp()->m_pMainWnd->GetDlgItem(IDC_EDIT1)->SetWindowText(_T(“雞啄米部落格”)); AfxGetMainWnd()->GetDlgItem(IDC_EDIT1)->SetWindowText(_T(“雞啄米部落格”));
以下為轉載:
A.子對話方塊得到父對話方塊的方法(此方法也可以幫助其他函式獲得主對話方塊)
1. extern CMainApp theApp; CMainDlg* dlg = (CMainDlg*)theApp.m_pMainWnd;獲得主對話方塊指標就可以呼叫它的成員的 2.
B.獲取對話方塊的指標--全域性變數的使用
假設CMyDialog為對話方塊類 1.先在CMyDialog.cpp中宣告一個全域性變數CMyDialog* pDlg; 2在OnInitDialog()的時候,pDlg = this; 3.在別的類使用他的時候,在別的類的Cpp中新增extern CMyDialog* pDlg; 4.pDlg->yourfunction(); |
C.在使用mfc的時候經常遇到自定義類訪問主對話方塊控制元件的問題,例如自定義類中的方法要輸出一段字串到主對話方塊的EDIT控制元件、控制對話方塊的進度條等 要在自定義的類中訪問主對話方塊空間,須獲得主對話的指標。主對話方塊的物件在app類的InitInstance()方法中宣告。檢視app類的cpp檔案,在InitInstance()方法中有如下語句: CAppDlg dlg; m_pMainWnd = &dlg; 主對話方塊指標被傳給m_pMainWnd