| 网站首页 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛 |
 
| 技术教程首页 | 开发语言 | WEB开发 | .NET技术 | 数据库 | 操作系统 | 网页制作 |
 
 
您现在的位置: 编程中国 >> 技术教程 >> .NET技术 >> VC.NET >> VC.NET教程 >> 正文
  ►  Visual C++.NET编程讲座之五
Visual C++.NET编程讲座之五
作者:Adding    阅读人次:……    文章来源:yesky    发布时间:2006-7-6    网友评论()条
 

  模式和无模式对话框的显示

  对话框有两种类型,一种是模式对话框,另一种是无模式对话框。所谓"模式对话框"是指当对话框显示后,用户必须在对话框中作出相应的操作,在退出对话框之前,对话框所在的应用程序不能执行其他操作。所谓"无模式对话框"是指当对话框被弹出后,一直保留在屏幕上,用户可继续在应用程序中进行其它操作。

  1. 模式对话框的显示

  一般情况下,我们看见的对话框多数是模式对话框。下面将前面的对话框以"模式"方式来显示。

  (1) 将解决方案资源管理器窗口切换到"资源视图",双击Menu下的IDR_MAINFRAME,打开Viewer中的菜单资源。

  (2) 在"格式"菜单中添加一个菜单项"背景设置(&B)…",其ID设为ID_FOMAT_SET。

  (3) 由于该对话框用来设置视图的背景色,因此我们需将菜单项ID_FOMAT_SET的COMMAND事件映射添加在CViewerView类中,并在映射函数CViewerView::OnFormatSet中添加显示对话框代码,如图6所示。


图6 在OnFormatSet中添加的代码

  程序说明:

  ① 程序中, DoModal()是CDialog的成员函数,用来负责模式对话框的显示和终止。

  ② 当对话框显示后,只有当用户单击"确定"按钮后,系统才认定用户在对话框中的选择或输入有效,函数DoModal返回IDOK,否则DoModal返回IDCANCEL,对话框中的选择或输入无效。

  ③ MessageBox是一个MFC窗口类CWnd的一个成员函数,用来显示一个"消息对话框",显示指定的内容。

  (4) 在类CViewerView接口文件ViewerView.h的前面添加CSetDlg类的包含头文件,如图7所示的加框部分。


图7 添加类CSetDlg类的包含头文件

  (5) 运行程序,打开"格式"菜单,单击"背景设置",结果如图7所示。由于我们还没有向对话框添加控件,因此显示的是一个默认的对话框。单击"确定"按钮后,还将弹出一个消息对话框,这就是上述代码的作用。


图8 模式对话框的显示结果

上一页  [1] [2] [3] [4] 下一页

 

 
文章录入:静夜思    责任编辑:静夜思 
  • 上一篇文章:

  • 下一篇文章:

  •  
    相关文章
    原创地带
    24小时热门帖子