MFC CFormView与CView之间数据传递(新手)
我用MFC分割了2个窗口,在左窗口显示图像,右窗口用CFormView做的控件。原意是在左窗口使用KEYDOWN控制物体运动,然后在右窗口编辑栏中显示示数,但是无法达成效...
我用MFC分割了2个窗口,在左窗口显示图像,右窗口用CFormView做的控件。原意是在左窗口使用KEYDOWN控制物体运动,然后在右窗口编辑栏中显示示数,但是无法达成效果,每次需要在编辑栏中输入(任意)数据才会更新编辑栏中的值。
我使用的是OnUpdate(EN_UPDATE),把编辑栏关联了一个变量,想在CView中改变变量的值(GetDlgItem(IDC_EDIT1)->SetWindowText(CFormCommandView::m_str);)但是报错illegal reference to data member 'CFormCommandView::m_str‘ in a static member function,不知道该如何解决,求大神指教。 展开
我使用的是OnUpdate(EN_UPDATE),把编辑栏关联了一个变量,想在CView中改变变量的值(GetDlgItem(IDC_EDIT1)->SetWindowText(CFormCommandView::m_str);)但是报错illegal reference to data member 'CFormCommandView::m_str‘ in a static member function,不知道该如何解决,求大神指教。 展开
展开全部
CFormCommandView::m_str
这样肯定是无法获取实际运行窗口数据的。想在CView中改变FormView的编辑框,你需要在CView中获取FormView的实际指针,再操作,这个过程稍微复杂。
通过AfxGetMainWnd()获取主框架指针;
强制转换后,获取拆分窗口变量pMainWnd->m_wndSplitter的指针;
通过拆分指针的函数m_wndSplitter->GetPane(0,1); 可以获取FormView的指针m_formwnd;
然后就可以改变编辑框的值了:m_formwnd->GetDlgItem(IDC_EDIT1)->SetWindowText(m_str);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询