我建了3个类,主对话框Dlg类、新的对话框类、TreeCtrl类,主对话框调用了 新的对话框和TreeCtrl类中的函数,现在新的对话框中放了几个按钮,实现时需要调用TreeCtrl类中的函数,如何实现???在新对话框中定义的TreeCtrl变量无法使用。
新的对话框只是在主对话框中显示:m_SelSearchDlg.Create(IDD_DIALOG_SELSEARCH, this);
新的对话框只是在主对话框中显示:m_SelSearchDlg.Create(IDD_DIALOG_SELSEARCH, this);
那么,在子对话框中这样:
cmaindlg *pdlg = GetParent();
pdlg->m_ctl.
现在新的对话框又要用到 TreeCtrl中的函数。
如果不能调用TreeCtrl中的函数,能够在主对话框中放一个按钮,并置前到新的对话框上面。就是在最前面显示(新对话框显示在主对话框上面了,主对话框中的按钮要显示在最前面)
GetMainWnd
以下为我的代码:
void CSearchDialogDlg::CreatSelSerachDlg(void)
{
m_SelSearchDlg/*新的对话框*/.Create(IDD_DIALOG_SELSEARCH, this);
CreatTreeCtrl(&m_SelSearchDlg);
}void CSearchDialogDlg::CreatTreeCtrl(CWnd *pParentWnd)
{
CPoint point = 0;
SIZE size = {0}; CWnd* pWnd;
pWnd = &m_SearchTree;
pWnd->CreateEx(0,WC_TREEVIEW, _T(""),
WS_VISIBLE | WS_TABSTOP | WS_CHILD |WS_POPUP
| TVS_HASBUTTONS | TVS_LINESATROOT | TVS_HASLINES
| TVS_DISABLEDRAGDROP | TVS_NOTOOLTIPS | TVS_CHECKBOXES,
CRect(point,size), pParentWnd, NULL);
m_SearchTree.m_pbuttonSearchArea = &m_buttonSearchArea;
m_SearchTree.InitialTree();
m_SearchTree.ShowWindow(FALSE);
}
如何在新的对话框中调用m_SearchTree变量。