、编写一个单文档应用程序,并修改它的图标、标题及版本信息,写出关键代码及程序执行过程。使用MFC
时间: 2024-10-09 14:02:28 浏览: 16
在Microsoft Foundation Classes (MFC) 中,创建一个简单的单文档应用程序涉及到MDI (Multiple Document Interface) 模式,它允许用户同时打开多个文档窗口。以下是创建一个基本的MFC MDI应用并设置其图标、标题和版本信息的关键步骤:
1. **项目设置**:
- 打开Visual Studio,选择"文件" > "新建" > "项目",然后选择"MFC"下的"C++ Console Application"模板。
2. **添加MDI框架**:
在向导中,在"Application Type"下选择"Message-based MFC application with ActiveX controls and dialog boxes"。这将包含一个MDIFrame窗口。
3. **编辑资源**:
- 右键点击资源视图(一般是.resx或.rc),可以添加新的资源项。例如,添加一个新的图标资源(IDR_MAINFRAME),更改应用程序名称和版本信息。
4. **修改源代码**:
- 在`AppWizard-generated code`(如AppMainFrame.cpp和AppMainFrame.h)中,找到`OnInitDialog`函数,通常在`OnInitDialog`里设置窗口标题。
```cpp
afx_msg void OnInitDialog();
// 在这里添加:
SetWindowText(IDC_APPFRAMESDLG, L"My App Title");
```
对于图标,需要更新窗口类`CMFMDIFrameWnd`的`m_pFrameIcon`成员,例如:
```cpp
afx_msg void OnCreateClient(LPCREATESTRUCT lpcs);
// 在这里修改图标设置:
if (::LoadIcon(pDX->GetSafeHwnd(), IDR_MAINFRAME))
m_pFrameIcon = AtlLoadImage(pDX->GetSafeHwnd(), IDR_MAINFRAME,
AtlCalcSize(IDC_APPFRAMESDLG, ::LoadBitmap(pDX->GetSafeHwnd(), IDR_MAINFRAME)));
```
5. **设置版本信息**:
在`afxres.h`文件中,你可以添加一个宏来存储版本信息,然后在程序的某个地方显示出来。比如:
```cpp
#define MyAppVersion "1.0"
// ...
afx_msg void AboutBox();
// 在AboutBox函数中显示版本信息
MessageBox(NULL, _T("My App\nVersion: ") + MyAppVersion, _T("About My App"), MB_OK | MB_ICONINFORMATION);
```
6. **编译运行**:
确保所有的修改都保存后,编译项目并运行。现在你应该能看到新的窗口标题和图标,并在关于对话框中看到指定的版本信息。