| 网站首页 | 文章中心 | 电子书下载 | 矢量图库 | 视频教程 | 素材下载 | 程序代码下载 | JS代码 | 论坛 | 
常用软件类:
|杀毒安全 |联络聊天 |网络软件 |多媒体类 |系统工具 |图形图像 |系统工具 |应用软件 |行业软件
开发设计类:
|动画制作 |图像处理 |3D设计 |操作系统 |站长学院 |网络相关 |WEB设计 |数据库类 |程序开发
Visual C++/MFC入门教程---第五章 对话框
作者:未知    文章来源:网络    点击数:    更新时间:2006-7-22
   我认为初学者使用以对话框为基础的应用是一个比较好的选择,因为这样一来可以摆脱一些开发界面的麻烦,此外也可以利用ClassWizard自动的添加消息映射。在VC中提供了生成“以对话框为基础的应用”的功能,你所需要选择的是在使用AppWizard的第一步选择“对话框为基础的应用”,如图。VC会生成包含有应用派生类和对话框派生类的代码。在应用类的InitInstance()成员函数中可以看到如下的代码: BOOL CMy58_s1App::InitInstance()
{
 CMy58_s1Dlg dlg;
 m_pMainWnd = &dlg;
 int nResponse = dlg.DoModal();
 if (nResponse == IDOK)
 {
  // TODO: Place code here to handle when the dialog is
  //  dismissed with OK
 }
 else if (nResponse == IDCANCEL)
 {
  // TODO: Place code here to handle when the dialog is
  //  dismissed with Cancel
 }

 return FALSE;
}
这是产生一个有模式对话框并创建它,在对话框返回后通过返回FALSE来直接退出。在设计时通过编辑对话框资源你可以设计好界面,然后通过ClassWizard映射消息来处理客户的输入,由于前几节已经讲过本节也就不再重复。 同样基于对话框的应用也同样可以使用属性对话框做为界面,或者是通过使用经过派生的通用对话框作为界面。提示:当你使用有模式对话框时最开始是无法隐藏窗口的,而只能在对话框显示后再隐藏窗口,所以这会造成屏幕的闪烁。一个解决办法就是采用无模式的对话框,无模式的对话框在创建后是隐藏的,直到你调用ShowWindow(SW_SHOW)才会显示。相关代码如下: BOOL CMy58_s1App::InitInstance()
{
 //必须新生成一个对象,而不能使用局部变量
 CMy58_s1Dlg* pdlg=new CMy58_s1Dlg;
 m_pMainWnd = pdlg;
 pdlg-〉Create();
 return TRUE;
}

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页


相关文章