创建基于对话框的Windows应用程序(一) —— 新建窗体

1、新建一个Visual C++的Empty Project。 

2、在Solution Explorer中右键Add New Item,添加 .cpp 文件,并提供Win32应用程序的入口点函数。 

3、在Solution Explorer或 Resources View 中右键Add Resource,选择Dialog。并在修改相关内容。

4、切换到 .cpp文件中,创建回调函数(Dlg_Proc),并在入口点函数中调用DialogBoxParam。 

 #include <Windows.h>
#include <tchar.h>
#include "Resource.h" INT_PTR WINAPI Dlg_Proc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
switch (uMsg)
{
case WM_CLOSE:
EndDialog(hwnd, );
break;
} return(FALSE);
} int WINAPI WinMain(HINSTANCE hinstExe, HINSTANCE, PTSTR pszCmdLine, int) {
DialogBoxParam(hinstExe, MAKEINTRESOURCE(IDD_DIALOG),
NULL, Dlg_Proc, _ttoi(pszCmdLine));
return();
}

Win32WindowsApplication.cpp

5、此时按下F5 Start Debugging,可以看到刚才新建的对话框。

6、在Output栏中显示的路径下可以找到生成的 .exe文件。将其拷贝到其他运行环境再运行时可能会发生错误。

7、该错误的解决办法是在项目的Properties里,在C/C++ – “Code Generation”中,将“Runtime Library”一栏设为Multi-threaded Debug (/MTd)。

————————————————

本文为本人原创,转载请注明出处。

http://www.cnblogs.com/lantingji/p/5873027.html

最新文章

  1. C#中AppDomain.CurrentDomain.BaseDirectory及各种路径获取方法
  2. CSS浏览器兼容问题总结
  3. 【ios面试总结】
  4. PHP---------PHP函数里面的static静态变量
  5. Leetcode#91 Decode Ways
  6. 银行B2C直连
  7. systemd-journald详解
  8. RequireJS 和 SeaJS
  9. HDU1176_免费馅饼【号码塔】
  10. 第十九章——使用资源调控器管理资源(2)——使用T-SQL配置资源调控器
  11. Ubuntu 14.04 配置FTP
  12. 3.3 for 循环
  13. B20J_3231_[SDOI2014]旅行_树链剖分+线段树
  14. windows 安装memchched和memcache教程
  15. JDK9新特性实战:流关闭新姿势
  16. 【原创】SAP/Oracle 集团企业海外全球化实施注意事项: 一带一路本地化 (持续更新)
  17. java mysql的latin1转UTF-8
  18. 【BZOJ3413】匹配(后缀自动机,线段树合并)
  19. java中map接口hashMap以及Enty之间的用法和关系
  20. Android App组件之Fragment说明和示例

热门文章

  1. [BZOJ4650][NOI2016]优秀的拆分(SAM构建SA)
  2. Problem X: 零起点学算法22——华氏摄氏温度转换
  3. Hadoop下大矩阵乘法Version2
  4. Ubuntu 16.04通过APT源安装QUEM虚拟机调试Linux内核
  5. 让旧的的Mac也能免费安装keynote
  6. 推荐一些不错的开源免费易上手的web前端框架
  7. zk watch机制及创建node机制
  8. SQL Server 跨数据库事务
  9. Shader and Program编程基本概念 - 转
  10. 引用日志log4net.dll的web.config配置