1、我用向导生成了一个单文档的程序。
2、我新建了一个FormView类。
3、我在View中创建FormView对象并显示。
4、我建了一个菜单并奖其放在View中执行代码来显示或隐藏FormView。5、出现奇怪问题:录我单击了FormView中的文本框后除了“退出”和“关于”
菜单其它的菜单全部被禁用了。我在MainFrame中将m_bAutoMenuEnable=FALSE后
菜单不再是灰色,并且可以单击,但是一样不起作用,根本就不执行任何代码。
这个问题我觉得很奇怪,请高手指点。6、将这些菜单的执行部分放在MainFrame中就都好了。7、简单的问题:我在MainFrame中怎样获得CView的指针?我用过GetActiveView()
但是好象并不太好用。请高手指点。
2、我新建了一个FormView类。
3、我在View中创建FormView对象并显示。
4、我建了一个菜单并奖其放在View中执行代码来显示或隐藏FormView。5、出现奇怪问题:录我单击了FormView中的文本框后除了“退出”和“关于”
菜单其它的菜单全部被禁用了。我在MainFrame中将m_bAutoMenuEnable=FALSE后
菜单不再是灰色,并且可以单击,但是一样不起作用,根本就不执行任何代码。
这个问题我觉得很奇怪,请高手指点。6、将这些菜单的执行部分放在MainFrame中就都好了。7、简单的问题:我在MainFrame中怎样获得CView的指针?我用过GetActiveView()
但是好象并不太好用。请高手指点。
如果你是用单文档,就只有GetActiveView()最好用了。不过你用的好像是多文档,你就通过GetFirstViewPosition() 和 GetNextView()来取得吧
m_bAutoMenuEnable=FALSE;
菜单不会变灰了,但是照样不起作用啊.这是为什么?
不是MDI的多文档项目,用不了GetFirstViewPosition()和GetNextView()
第二个我只知道一个笨办法一定可以用
用全局变量,在View类的构造函数里加xxxx=this;
在MainFrame里调用
m_bAutoMenuEnable=FALSE;
菜单不会变灰了,可以单击,但是照样不起作用.第二个问题当然可以有别的办法,比如启动的时候发一个消息MainFrame来传
View的指针.但是我想知道MainFrame自已或者Afx系列有没有办法来得到
View的指针.
变灰仅仅是让它不可点击。但是即使是没有变灰,但是如果点击送出消息以后无法找到相应的消息循环处理函数,就会出现楼主所说的没有效果的点击(没有处理啊)
2:即使是你创建的是SDI,但是你又创建了一个CFormView实例,用GetActiveView()去检测Frame中的CView对象,但是已经有了两个,你说计算机怎么处理(应该是不好用的)。愚见。
但是CMainFrame类好象没有办法能够得到自已的CView--除了GetActiveView()--第一个问题我觉得大家已经说的很清楚了我也比较认同 asdmonster(asd)的说法,很感谢。
现在是第二个问题没有答案了。