您现在的位置: 中国IT实验室 >> 游戏开发 >> 初学入门 >> 文章正文
教你如何做到显示 Dialog Box(对话框)
来源:ChinaITLab 收集整理 作者: 时间:2004-12-23


  
  前面介绍的 Debug Message(调试信息) 太简单,不能显示为通常的窗口形式。下面我们用资源编辑工具制作 Dialog Box(对话框),把它显示成窗口形式。
  
  1. 用上回学过的方法新建一个空白工程,命名为 "Dialog" 。
  然后打开 Dialog 文件夹,可以看见里面自动生成的3个文件:
  Dialog.dsp
  Dialog.dsw
  Dialog.ncb
  
  2. 选择菜单 [Insert|插入]-[Resource...|资源...] 打开 [Insert Resource|插入资源] 面板,在左栏内选中 [Dialog|对话框] ,然后点击 [New|新建] :
  
 

  
 

  3. 选中 [OK] 按钮,按 [Delete] 来删除它:
  
 

  4. 右击 [Cancel] 按钮,在关联菜单中选择 [Properties|属性] 打开 [Push Button properties|赋予按钮属性] 面板,在 [General|常规] 选项卡的 [ID:] 栏内键入 "IDC_CLOSE" 、[Caption|内容] 栏内键入 "CLOSE(关闭)" :
  
 

  
 

  5. 从 [Controls|控制] 面板选择 [Static Text|静态文本] 工具 ,在 [Dialog] 窗口上拖曳出文本域:
  
 

  
 

  (如果 [Controls|控制] 面板没有打开,请右击工具条,在弹出菜单中勾选 [Controls|控制] 。)
  
  6. 右击 "Static" 文本域,在关联菜单中选择 [Properties|属性] 打开 [Text properties|文本属性] 面板,在 [General|常规] 选项卡的 [ID:] 栏内键入 "IDC_STATIC" 、[Caption|内容] 栏内键入 "Show Dialog Box(显示对话框)" :
  
 

  7. 适当调整一下 Dialog Box 的大小和布局:
  
 

  8. 关闭资源窗口(Script1),保存资源文件,文件名 "dialog.rc" 。
  然后打开 Dialog 文件夹,可以看见里面新生成的两个文件:
  dialog.rc
  resource.h
  选择菜单 [Project|工程]-[Add To Project|添加到工程]-[Files...|文件...] ,向工程中添加这两个文件:
  
 

  9.  用上回学过的方法向工程中新建一个 C++ Source File(C++源文件),命名为 "dialog" ,向其中键入篇末附带的源程序。
  
  10. 编译并执行!
  OK ?
  

  源程序:
  /**********************************************/
  /*★ 显示 Dialog Box  1999-04-10 前田 稔 ★*/
  /**********************************************/
  #include
  #include "resource.h"
  
  // 函数类型说明
  LRESULT CALLBACK MainDialogProc( HWND, UINT, WPARAM, LPARAM );
  
  // ★ Windows 主函数 ★
  int APIENTRY WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
  LPSTR lpCmdLine, int nCmdShow )
  {
  DialogBox(hInstance,MAKEINTRESOURCE(IDD_DIALOG1),NULL,(DLGPROC)MainDialogProc);
  return TRUE;
  }
  
  // ★ Windows 事件处理 ★
  LRESULT CALLBACK MainDialogProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam)
  {
  switch(message)
  {
  case WM_COMMAND:
  if (LOWORD(wParam)==IDC_CLOSE)  PostQuitMessage(0);
  return TRUE;
  break;
  case WM_CLOSE:
  EndDialog(hDlg, TRUE);
  return TRUE;
  break;
  }
  return FALSE;
  }
收藏本文 责编:admin 


相关文章
游戏开发新手入门之Windows编程
自己研究的一个场景物体剔除方法
教你实现卡通渲染的另类勾边方法
Lua的function、closure和upvalue
Visual C#编写 3D游戏框架示例
推荐文章


 精彩友情推荐
·神州数码交换机
·神州数码交换机价格
·神州数码网络交换机
·netgear交换机
·网件交换机
·IDC资讯大全
·机房品质万里行
·IDC托管必备知识
·全国IDC报价
·网站推广优化
 基础入门  开发文档
 最新推荐
  多数的Windows程序都需要Windows.h和Windowsx.h这两个头文件,要确保使用它们。当然,你还需要其它......
游戏引擎演化史
在Windows上安装OGRE的方法
关于滤镜遮罩概念,Sobel 遮罩
游戏开发新手入门之Windows编程
游戏开发新手入门之位图化图形
教你实现卡通渲染的另类勾边方法
游戏设计大师谈如何成为一名游戏设
Visual C#编写 3D游戏框架示例
真正的 Java 学习从入门到精通
游戏开发经验——游戏开发的基本常
  针对于移动新出台的政策,需要尽快地把我们公司的游戏对应到不同的手机平台,这是针对市场策略的有利调整............
Quake-III代码里神奇的浮点开方函数
基于Dialogue的MFC程序调用DirectX
关于Kjava手机平台移植可行性报告
网络游戏的数据传输处理和防火墙穿
浅谈网游的数据传输处理和防火墙穿
向量几何在游戏编程中的使用(六)
向量几何在游戏编程中的使用(五)
向量几何在游戏编程中的使用(四)
向量几何在游戏编程中的使用(三)
向量几何在游戏编程中的使用(二)
  培训中心