创建了一个视图类程序,在其中又创建了一个对话框,属于不同的类 然后我想让视图类中的某个变量随着对话框中编辑框的内容改变而改变,如何通过响应编辑框内容改变函数实现?
解决方案 »
- mediaplayer控件 关闭调用close为什么这么慢
- CListCtrl奇怪问题:点击滚动栏时,网格线重叠或消失了一段时间
- dll文件调用
- unresolved external symbol "protected: static struct AFX_MSGMAP const CDialog::messageMap" (?messageMap@CDialog@@1UAFX_MSGMAP@@B
- 怎样添加工具条中下拉按钮的菜单?
- 请教各位,如何用编程方式实现系统不自动待机!
- 谁有VC写的G.711音频压缩解压代码(注:不是C写的,最好含测试代码)
- vc编译器出问题了,请教!!
- CreateThread参数的问题!
- 哪个网里有中阿的现场直播看?
- 读取文件
- 简单问题
用:CXXXView pView=(CXXXView *)((CMainFrame*)AfxGetMainWnd())-> GetActiveView() ;
然后直接用pView操作视图吧
我的对话框实在主视图中分割窗口在放进去的。对话框是基于CFormView类的,主视图是基于CscrollView类的,而且工程名称是中文“监控”,所以主视图的view类是CMyView,怎么解决 谢谢
该怎么访问视图类
如果增加 #include “监控View。h”的话,出现错误:
e:\vc++\我的毕设\监控view.h(30) : error C2143: syntax error : missing ';' before '*',
双击错误指向了 CMyDoc* GetDocument();怎么办?
{
// TODO: If this is a RICHEDIT control, the control will not
// send this notification unless you override the CFormView::OnInitDialog()
// function and call CRichEditCtrl().SetEventMask()
// with the ENM_CHANGE flag ORed into the mask.
// TODO: Add your control notification handler code here UpdateData(TRUE);
CMainFrame* pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd; //得到指向指定视图(对话框)的指针
CMyView *pMyView=(CMyView *)pFrame->m_splitter.GetPane(0,1); // 指针指向第一行第0列的对话框
pMyView->UpdatenNum(m_nNum);
// CMyView *pView; //为什么这样就出错
// pView->UpdatenNum(m_nNum);
}问题解决,但是还有个问题 为什么用第一种方式正确,用第二种方法就不行呢?运行时提示内存不能为written?
// CMyView *pView; //为什么这样就出错
// pView->UpdatenNum(m_nNum);这个是个空指针,对空指针进行操作,结果是可知的,就是crash.呵呵。