14 个解决方案
#1
既然是子窗口调用,那就用GetParent()获得父窗口指针
如父窗口是CMyParent,则 CMyParent* pWnd = (CMyParent*)GetParent();
然后pWnd->GetDlgItem(/*控件ID*/);获得控件
如父窗口是CMyParent,则 CMyParent* pWnd = (CMyParent*)GetParent();
然后pWnd->GetDlgItem(/*控件ID*/);获得控件
#2
直接从父窗口传这个控件的指针给子窗口不就行了
#3
大家看看 急需解决这个问题!
#4
现在知道这个控件的变量,怎样解决?
#5
按我2楼的方法不可以么
#6
修改子窗口类的构造函数,传递父窗口的指针就可以了
#7
无论什么方法,只要子窗口能取到父窗口控件的指针就可以操作了。
#8
CXXDlg *pDlg=(CXXDlg *)AfxGetMainWnd();
pDlg->m_listCTRl...;
pDlg->m_listCTRl...;
#9
直接在子窗口中这样写就行了:
((CFatherDlg *)GetParent())->m_ListCtrl.Insert(....);
((CFatherDlg *)GetParent())->m_ListCtrl.Insert(....);
#10
建议还是通过发送消息来处理的好。
由子控件发送消息给父窗体,这样父窗体想怎么响应就怎么响应。
不要直接把数据传入到子窗体去实现,这样会增加各个控件代码的耦合,维护起来会比较麻烦的。
由子控件发送消息给父窗体,这样父窗体想怎么响应就怎么响应。
不要直接把数据传入到子窗体去实现,这样会增加各个控件代码的耦合,维护起来会比较麻烦的。
#11
有道理~
#12
回调函数啊,消息啊,都OK.10楼有道理
#13
GetParent()
#14
mark
#1
既然是子窗口调用,那就用GetParent()获得父窗口指针
如父窗口是CMyParent,则 CMyParent* pWnd = (CMyParent*)GetParent();
然后pWnd->GetDlgItem(/*控件ID*/);获得控件
如父窗口是CMyParent,则 CMyParent* pWnd = (CMyParent*)GetParent();
然后pWnd->GetDlgItem(/*控件ID*/);获得控件
#2
直接从父窗口传这个控件的指针给子窗口不就行了
#3
大家看看 急需解决这个问题!
#4
现在知道这个控件的变量,怎样解决?
#5
按我2楼的方法不可以么
#6
修改子窗口类的构造函数,传递父窗口的指针就可以了
#7
无论什么方法,只要子窗口能取到父窗口控件的指针就可以操作了。
#8
CXXDlg *pDlg=(CXXDlg *)AfxGetMainWnd();
pDlg->m_listCTRl...;
pDlg->m_listCTRl...;
#9
直接在子窗口中这样写就行了:
((CFatherDlg *)GetParent())->m_ListCtrl.Insert(....);
((CFatherDlg *)GetParent())->m_ListCtrl.Insert(....);
#10
建议还是通过发送消息来处理的好。
由子控件发送消息给父窗体,这样父窗体想怎么响应就怎么响应。
不要直接把数据传入到子窗体去实现,这样会增加各个控件代码的耦合,维护起来会比较麻烦的。
由子控件发送消息给父窗体,这样父窗体想怎么响应就怎么响应。
不要直接把数据传入到子窗体去实现,这样会增加各个控件代码的耦合,维护起来会比较麻烦的。
#11
有道理~
#12
回调函数啊,消息啊,都OK.10楼有道理
#13
GetParent()
#14
mark