CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  界面

◎◎◎求救:AboutBox对话框不显示,什么原因?

楼主ameramer(艾玛尔)2005-06-01 19:11:35 在 VC/MFC / 界面 提问

#include   "resource.h"  
  ..............  
  LRESULT   CALLBACK About(HWND,   UINT,   WPARAM,   LPARAM);  
  ..............  
  LRESULT   CALLBACK   MainWndProc(HWND   hWnd,   UINT   message,WPARAM   wParam,   LPARAM   lParam)  
  {  
  ..............  
  case   IDM_ABOUT:  
  DialogBox(ghInst,   (LPCTSTR)IDD_ABOUTBOX,   hWnd,   (DLGPROC)About);  
  break;  
  ..............  
  }  
   
  LRESULT   CALLBACK   About(HWND   hDlg,   UINT   message,   WPARAM   wParam,   LPARAM   lParam)  
  {  
  switch   (message)  
  {  
  case   WM_INITDIALOG:  
  return   TRUE;  
   
  case   WM_COMMAND:  
  if   (LOWORD(wParam)   ==   IDOK   ||   LOWORD(wParam)   ==   IDCANCEL)    
  {  
  EndDialog(hDlg,   LOWORD(wParam));  
  return   TRUE;  
  }  
  break;  
  }  
          return   FALSE;  
  }  
   
   
  请问哪里有问题   ,aboutbox对话筐不显示哦     :( 问题点数:20、回复次数:3Top

1 楼jasonjixiang(吉祥)回复于 2005-06-01 20:17:15 得分 15

因为IDM_ABOUT应为一个COMMAND  
  所以应该放在case   WM_COMMAND中处理  
  如下:  
  switch   (message)    
  {  
  case   WM_COMMAND:  
  wmId         =   LOWORD(wParam);    
  wmEvent   =   HIWORD(wParam);    
  //   Parse   the   menu   selections:  
  switch   (wmId)  
  {  
  case   IDD_ABOUTBOX:  
  MessageBox(hWnd,"I   was","Good",MB_OK);  
  DialogBox(hInst,   (LPCTSTR)IDD_DIALOG1,   hWnd,   (DLGPROC)About);  
  break;  
  default:  
  return   DefWindowProc(hWnd,   message,   wParam,   lParam);  
  }  
  break;  
  case   WM_PAINT:  
  hdc   =   BeginPaint(hWnd,   &ps);  
  //   TODO:   Add   any   drawing   code   here...  
  RECT   rt;  
  GetClientRect(hWnd,   &rt);  
  DrawText(hdc,   szHello,   strlen(szHello),   &rt,   DT_CENTER);  
  EndPaint(hWnd,   &ps);  
  break;  
   
  case   WM_DESTROY:  
  PostQuitMessage(0);  
  break;  
  default:  
  return   DefWindowProc(hWnd,   message,   wParam,   lParam);  
        }  
  Top

2 楼jasonjixiang(吉祥)回复于 2005-06-01 20:21:39 得分 5

其中IDD_DIALOG1为你定义的对话框资源  
  对了,现在很少有耐心从SDK编程开始学习了  
  好好努力,我也是刚学VC的!Top

3 楼ameramer(艾玛尔)回复于 2005-06-01 21:21:36 得分 0

谢谢楼上,不过应该是case   IDM_ABOUTBOX:                     //(菜单对应id)哟~~      
   
   
  一起努力Top

相关问题

  • dll中显示对话框
  • 显示多个对话框?
  • 对话框显示图片
  • 对话框无法显示
  • 显示模态对话框后,无法选择,请问是什么原因?
  • 对话框显示问题 ?? 按键只显示一个0.8,这是什么原因??
  • 问一个基于对话框的工程,创建后,想显示其中的AboutBox,出了问题,求助!
  • Office 97 对话框显示问题
  • 怎么让对话框不显示?
  • 多个模式对话框的显示

关键词

  • aboutbox
  • wparam
  • hwnd
  • loword
  • idd
  • lparam
  • idm
  • case wm
  • lresult
  • rt

得分解答快速导航

  • 帖主:ameramer
  • jasonjixiang
  • jasonjixiang

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo