- 5
- 0
- 约 7页
- 2017-01-30 发布于重庆
- 举报
手工生成(不用向导)MFC对话框应用程序
手工生成(不用向导)MFC对话框应用程序
天天用MFC的向导开发程序觉得有的时候不是很方便,怎样不用向导直接用MFC来生成一个对话框应用程序呢?现在我来为大家介绍一下。
打开vc++6.0,建立个基本的工程,当然了工程名称自己随便取,这里我取名为AppDlgTst。工程的类型选择Win32 Application,如下图:
第二歩选择“An empty project”,一个空的工程,如下图:
点击“完成”,再“确定”,建立一个win32工程。
接下来,给工程添加主程序类。
主菜单(insert-NewClass),打开“New Class”对话框。
新建一个类,Name: CWinAppDlg ,Derived From :CWinApp,as:public。
点击“Change…”按钮,修改类文件的路径,把类文件放到新建的工程目录下。
界面如下:
点击“OK”,会出现如下提示框:
不用管它,确定。
这是一个基本的应用程序类,就这样建成了。
接下来,我们需要手动添加一个对话框,添加方法如下:
依次点击主菜单的“insert”→“resource…”,打开insert resource对话框。
选中“Dialog”,点击“New”按钮,一个对话框就添加到你的工程中了。如下图:
对话框添加了,但工程中相应的资源管理器(ResourceView)还没有出现,无法操作添加的对话框。
关闭工作区,此时系统会提示是否保存资源文件?如下图:
点击“是”,保存资源文件为“script.rc”,保存,如下图。
重新打开工程,但左侧的工程管理栏内仍然没有“resourceView”页,怎么办?把刚才保存的资源文件添加到工程即可,操作如下:
依次点击主菜单“project”→“add project”→“Files…”,打开“Insert Files into Project”对话框,找到刚才退出工程时保存的资源文件“Script.rc”,选中它,点击“保存”。
再看看工程管理栏,resourceView页出现啦!
切换到对话框页面,对准对话框点右键,选择“Class Wizard”,弹出如下对话框:
点击“是”,弹出“Select Source Files-Script.clw”对话框,如下图:
点击“Add All”按钮,再按OK,出现另一个对话框:
OK,出现“New Class”对话框,添加一个“CDlgTst”类,OK。如下图:
对话框资源及其类添加完毕,还需添加必要的头文件。
在“DlgTst.h”文件的顶部添加资源ID定义头文件,如下:
#include resource.h // 手动添加
在“Dlg.cpp”文件的顶部添加和修改头文件,如下:
//#include stdafx.h // 系统自动添加的,去掉
#include afxWin.h // 手动添加
//#include script.h // 系统自动添加的,mfc的bug,去掉
#include winAppDlg.h // 替换上一句。此处应包含继承自CWinApp的那个主程序类头文件
#include DlgTst.h
至此,新添加的主对话框模块已经全部完成。接下来,就是如何显示主对话框的问题了。
在CWinAppDlg类的定义体(winAppDlg.h头文件内)里添加如下代码:
BOOL InitInstance(); // 重载初始化函数
在“WinAppDlg.cpp”文件头部添加两个头文件:
#include afxwin.h // 手动添加mfc头文件
#include DlgTst.h // 加入对话框类头文件
在“WinAppDlg.cpp”文件底部添加应用程序初始化函数体,如下:
BOOL CWinAppDlg::InitInstance()
{
CDlgTst myDlg;
m_pMainWnd = myDlg; // 将对话框类对象指定为主窗口
myDlg.DoModal(); // 以模态方式显示主对话框
return TRUE;
}
在“WinAppDlg.cpp”文件底部添加应用程序实例CWinAppDlg theApp。这一步很重要,不要忘记哦。
这时你编译程序,会出现如下的错误:
不要慌,这是因为你没有把MFC的链接库包含进来的缘故。只要你在主菜单project-setting-general-micrsoft foundation classes 中选择“Use MFC in a static Library”这时你
您可能关注的文档
最近下载
- 2021年上海市嘉定区中考英语二模试卷含解析.pdf VIP
- 2025年广东省普通高中学业水平选择性考试生物(详解版).docx VIP
- 宁德市2025-2026学年(上期)高二期末考试数学试卷(含答案).pdf
- 鄂尔多斯职业学院单招《职业适应性测试》真题(达标题)附答案详解.docx VIP
- 2025年四川中科《浅谈肥胖治疗新进展》继续教育习题答案.docx VIP
- 小学三年级数学测量单元试题.docx VIP
- 三菱变频器使用手册-FR-E540 中文版.pdf VIP
- 小升初语文练习题6年级语文.pdf VIP
- 8.1 0—3岁婴幼儿心理发展评价(课件)《0-3岁婴幼儿心理发展与教育》(华东师范大学出版社).pptx VIP
- 《测量》习题3.doc VIP
原创力文档

文档评论(0)