简单VC对话框编程

简单VC对话框编程

基本步骤

1.点击文件--新建--项目

2. 选择Win32项目,填入名称和选择路径

3. 在应用程序向导窗口中点击”下一步“

4. 在应用程序设置窗口中勾选”空项目“,再点击“完成”

5. 在左边的解决方案资源管理器窗口中,右击“源文件”,选择“添加”-“新建项”

6. 在“添加新项”窗口中,先选择C++文件(.cpp),再写入源文件名,点击“添加”。这样,源文件就添加好了

7. 添加资源文件(资源文件用来描述对话框的图形界面),在左边的解决方案资源管理器窗口中,右击“资源文件”,选择“添加”-“资源”

在“添加资源”窗口,选中Dialog,再点击“新建”

8. 点击右侧的“工具箱”,即可展开工具箱,并添加需要的控件到对话框中

9. 在相应的窗体或控件上右击鼠标,选择“属性”,可以更改已添加组件的属性。

例如,修改对话框的标题为“测试”,在对话框属性中更改“Caption”项内容即可。然后将对话框的ID改为DLG,Visible属性改为TRUE

10. 更改完成后,可以点击工具栏左上角的“测试对话框”按钮查看运行效果

11. 建立主函数在之前建好的源文件中添加如图所示的主函数代码,代码的含义已经作了相应的注释

#include

#include"resource.h" //包含资源文件

//声明对话框程序

BOOL CALLBACK DlgProc(HWND,UINT,WPARAM,LPARAM);

//主函数

int WINAPI WinMain(HINSTANCE hInstance,

HINSTANCE hPrevInstance,

PSTR szCmdLine,

int iCmdShow)

{

/*DialogBox函数:创建一个模态对话框

参数1:实例句柄

参数2:对话框资源模板名

此参数类型为以NULL结尾的字串指针,故用MAKEINTRESOURCE宏对整形ID进行转换

参数3:对话框的父窗口,如无则为NULL

参数4:对话框程序指针(消息处理函数)

*/

DialogBox(hInstance,MAKEINTRESOURCE(DLG),NULL,DlgProc);

return 0;

}

//对话框程序

BOOL CALLBACK DlgProc(HWND hDlg,UINT msg,WPARAM wParam,LPARAM lParam)

{

switch(msg)

{

case WM_INITDIALOG://初始化对话框的代码添加到这

return TRUE;

case WM_COMMAND://处理命令消息的代码添加到这

switch(LOWORD(wParam))

{

case IDOK://点击了"确定"按钮需要执行的操作添加到这

MessageBox(NULL,TEXT("你点了确定"),TEXT(""),MB_OK);

return TRUE;

case IDCANCEL://点击取消按钮需要执行的操作添加到这

/*EndDialog函数:关闭对话框

参数1:要关闭的对话框窗口句柄

参数2:从创建对话框函数返回到应用程序的值*/

EndDialog(hDlg,0);

}

return TRUE;

case WM_CLOSE://点击右上角小叉关闭时需要执行的操作添加到这

EndDialog(hDlg,0);

return TRUE;

}

return FALSE;

}

MessageBox(NULL,TEXT("你点了确定"),TEXT(""),MB_OK);

第一个参数是父窗口的句柄,第二个参数是内容,第三个参数是标题,第四个参数是确定

12. 运行结果

函数注释

DialogBox创建dialog窗口

函数原型

int DialogBox(

HIBSTANCE hInstance,//指向模块的句柄

LPCTSTRlp Template, // 指向模板的字符串指针

HWND hWndParent, //父窗口句柄

DLGPROC lpDialogFunc // 窗口过程函数

);

MAKEINTRESOURCE(根据ID获取窗口模板名称)

相关推荐

日本队26世界杯主场球衣谍照曝光:海洋蓝色调点缀银灰线条
平板安卓office365破解版

日本队26世界杯主场球衣谍照曝光:海洋蓝色调点缀银灰线条

📅 09-17 👁️ 2396
江苏酒店,江苏酒店预订,江苏宾馆住宿推荐【携程酒店】
365防伪码查询系统

江苏酒店,江苏酒店预订,江苏宾馆住宿推荐【携程酒店】

📅 08-01 👁️ 7351
影院订单管理系统有哪些?全面解析各类订单管理系统
365防伪码查询系统

影院订单管理系统有哪些?全面解析各类订单管理系统

📅 08-20 👁️ 3050
记事本剪贴板与文本查找替换实战指南
365bet手机版中文

记事本剪贴板与文本查找替换实战指南

📅 08-11 👁️ 4701