在VS中创建 C++ MFC 单文档
1、添加对话框:打开资源视图,对原窗体添加工具栏新项目,单击右键添加消息响应函数到原View中。
并在资源视图创建新的Dialog对话框,单击右键添加类(命名为C+名称),此时生成了对话框类的cpp和h。
最后在前面消息响应中加入对应的代码以达到点击工具栏显示对话框的目的(记得加头文件)。
C类名 dlg;
dlg.DoModal();
最后再在对话框中添加各种工具。
2、添加关联变量:点击对话框中添加的需要传入值的控件 单击右键添加变量,输入传入后的变量名其余不变保持其为control。
打开按钮 使用添加消息响应函数(对应其对话框类的cpp)。
添加如下消息响应函数:
//显示保存文件对话框
IDC_OPEN_EDIT 为前面编辑控件的id
// 设置过滤器
TCHARszFilter[] = _T("文本文件(*.txt)|*.txt|所有文件(*.*)|*.*||");
// 构造打开文件对话框
CFileDialog fileDlg(TRUE, _T("txt"), NULL, 0, szFilter, this);
CString strFilePath;
// 显示打开文件对话框
if(IDOK == fileDlg.DoModal())
{
// 如果点击了文件对话框上的“打开”按钮,则将选择的文件路径显示到编辑框里
strFilePath = fileDlg.GetPathName();
SetDlgItemText(IDC_OPEN_EDIT, strFilePath);
// 设置过滤器
TCHARszFilter[] = _T("文本文件(*.txt)|*.txt|Word文件(*.doc)|*.doc|所有文件(*.*)|*.*||");
// 构造保存文件对话框
CFileDialog fileDlg(FALSE, _T("doc"), _T("my"), OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, szFilter, this);
CString strFilePath;
// 显示保存文件对话框
if(IDOK == fileDlg.DoModal())
{
// 如果点击了文件对话框上的“保存”按钮,则将选择的文件路径显示到编辑框里
strFilePath = fileDlg.GetPathName();
SetDlgItemText(IDC_SAVE_EDIT, strFilePath);
}