我用CDialogBar生成一个新的工具栏,遇到了一系列的问题,恳求各位高手解答
1.CDialogBar的派生类的问题.我看过一些文章,他们都是说先创建DialogBar资源,然后从CDialog派生,然后再把CDialog改为CDialogBar,可我认为好像不行,因为VC的工程已经任务这个类是从CDialog继承来的,所以用ClassView添加成员时添加的都是CDialog的成员,而且CDialog并不是CDialogBar的父类,两者的差距大着呢.我还看过一篇文章说先从CWnd继承,再改为CDialogBar,我认为还有些道理,毕竟CWnd时CDialogBar的父类,可是再怎么往下做就不知道了.
2.我在CMainFram里OnCreate成员中Create了CDialogBar类,可是这只能创建了对话框的框架,当中的控件好像还没创建,因为我得到的这些控件的指针都是空的,总不能这儿也调用控件的Create函数挨个创建吧?请教各位高手改如何处理.
1.CDialogBar的派生类的问题.我看过一些文章,他们都是说先创建DialogBar资源,然后从CDialog派生,然后再把CDialog改为CDialogBar,可我认为好像不行,因为VC的工程已经任务这个类是从CDialog继承来的,所以用ClassView添加成员时添加的都是CDialog的成员,而且CDialog并不是CDialogBar的父类,两者的差距大着呢.我还看过一篇文章说先从CWnd继承,再改为CDialogBar,我认为还有些道理,毕竟CWnd时CDialogBar的父类,可是再怎么往下做就不知道了.
2.我在CMainFram里OnCreate成员中Create了CDialogBar类,可是这只能创建了对话框的框架,当中的控件好像还没创建,因为我得到的这些控件的指针都是空的,总不能这儿也调用控件的Create函数挨个创建吧?请教各位高手改如何处理.
step2:project->Add to project->Components and controls->Visual C++ Components
选择Dialog Bar,按Insert
step3:资源管理器中多了一个缺省名为CG_IDD_MYDIALOGBAR的对话框资源在上面添加
你想使用的控件(IDC_BUTTON1,一个按钮。按Ctrl+W,提示你需要将资源和类绑定,选择已 有的类,把它绑定到CMainFrame.
step4:在ClassWizard的object ID列表框中出现“IDC_BUTTON1",选中它,在ClassName
列表中选择CMainFrame,添加消息处理函数:
void CMainFrame::OnButton1()
{
MessageBox("Hellow World!");
}
step5:菜单资源的"查看“下面加入一个ID为CG_ID_VIEW_MYDIALOGBAR,caption为
My Dialog Bar的项,用来控制DialogBar的显示、隐藏