有两个平级的对话框,请问如何在一个对话框的函数里得到另一个对话框的指针?

hust_liuX 2006-03-07 01:54:42
具体情况是这样的:
我用CSplitterWnd对象把一个SDI窗口分成了两个窗口(一个左,一个右),每个窗口都是CFormView的派生类,每个窗口都对应一个对话框控件。现在我在左边的窗口设置了一个树型控件,而在右边的窗口设置了一个CEdit控件。
我的目的是想当我点击左边这个树型控件时,能够在右边的CEdit控件上显示出一些东西出来。请问有什么好的办法?
我的做法是,在属于左边的窗口的类中,当点击树型控件时,便有左边这个类的相应的处理函数来处理这个动作。在这个处理函数里,我想得到右边窗口类的对象指针,从而能够利用这个指针得到CEdit控件的对象,然后这个对象调用SetWindowText()来在CEdit中显示相关信息。但是应该怎样在左边窗口的类的函数里面得到右边窗口类的指针呢?
...全文
137 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
蒋晟 2006-03-08
  • 打赏
  • 举报
回复
use GetDocument()->UpdateAllVIews(this, lHint,pHint) in your view classes
see http://msdn2.microsoft.com/en-us/library/w1z3te7e.aspx
ks_gq 2006-03-08
  • 打赏
  • 举报
回复
我的目的是想当我点击左边这个树型控件时,能够在右边的CEdit控件上显示出一些东西出来。请问有什么好的办法?

我认为按照MFC的思路最好的办法就是利用CDocument来更新你要更改的视图。当点左面的树型控件时:GetDocument()->UpdateAllViews(......); 在右面视图的OnUpdate 函数中来修改要显示的文字
Tan18 2006-03-08
  • 打赏
  • 举报
回复
((CMainFrame*)AfxGetMainWnd())->m_pSplitterwnd;
slayer530 2006-03-07
  • 打赏
  • 举报
回复
AfxGetApp()->GetFrameWnd->m_pSplitterwnd
AfxGetApp()基本在任何地方可以用
hust_liuX 2006-03-07
  • 打赏
  • 举报
回复
TO Tan18(阿强):用
(CFormViewRight*)m_pSplitterWnd->GetPane(0,1);语句的话,m_pSplitterWnd不能在左边这个窗口类的函数中得到吧?如果可以的话,怎么操作?
hust_liuX 2006-03-07
  • 打赏
  • 举报
回复
再请问一下大牛,如果按你说的定义一个全局变量,应该怎么定义呢?
Tan18 2006-03-07
  • 打赏
  • 举报
回复
(CFormViewLeft*)m_pSplitterWnd->GetPane(0,0);
Tan18 2006-03-07
  • 打赏
  • 举报
回复

(CFormViewRight*)m_pSplitterWnd->GetPane(0,1);
hust_liuX 2006-03-07
  • 打赏
  • 举报
回复
还有更好的办法吗?
一个傻冒 2006-03-07
  • 打赏
  • 举报
回复
定义全局变量.来保存指针

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧