天空之城

快乐并活着

用户操作
[即时聊天] [发私信] [加为好友]
林宏ID:linhong34
47986次访问,排名2299(2)好友2人,关注者4
linhong34的文章
原创 41 篇
翻译 2 篇
转载 98 篇
评论 20 篇
linhong34的公告
简历下载
林宏简历下载
如果贵公司需要我,请联系我
最近评论
sap99:www.sap99.com/,SAP99资料多多

SAP免费资料下载
http://www.sap99.com

有很多的学习资料,推荐一下,
lzx5201314:谢谢你 有收获了
bluecll:不错,转了~
aspx_RICK:aspx_RICK
aspx_RICK:aspx_RICK
文章分类
    收藏
      相册
      ^O^
      计算机
      csdn
      msdn
      天空之城
      学校
      桂林电子科技大学
      综合
      网易
      存档
      软件项目交易
      订阅我的博客
      XML聚合  FeedSky
      订阅到鲜果
      订阅到Google
      订阅到抓虾
      订阅到BlogLines
      订阅到Yahoo
      订阅到GouGou
      订阅到飞鸽
      订阅到Rojo
      订阅到newsgator
      订阅到netvibes

      转载 Windows API一日一练(4)MessageBox函数 收藏

      新一篇: 开发工具大比拼之Visual C++ VS Delphi  | 旧一篇: 选择考研无需犹豫的八种人

      为了显示提示信息给用户,Windows是提供了一个非常方便的API函数MessageBox给用户使用,使用这个API函数可以显示简单的文字信息出来,提醒或提示用户进行下一步操作。
      函数声明如下:
      WINUSERAPI
      int
      WINAPI
      MessageBoxA(
          __in_opt HWND hWnd,
          __in_opt LPCSTR lpText,
          __in_opt LPCSTR lpCaption,
          __in UINT uType);
      WINUSERAPI
      int
      WINAPI
      MessageBoxW(
          __in_opt HWND hWnd,
          __in_opt LPCWSTR lpText,
          __in_opt LPCWSTR lpCaption,
          __in UINT uType);
      #ifdef UNICODE
      #define MessageBox MessageBoxW
      #else
      #define MessageBox MessageBoxA
      #endif // !UNICODE
      从上面可以看出,WindowsAPI是两种声明,一种是使用到ANSI编码,一种是使用到UNICODE编码的API函数。通过宏定义把这两种API名称统一到MessageBox的声明。这是一种使用选择不同API的技术,在今后的编程里,大多数都需要使用UNICODE编码了,因为可以适应不同国家的语言显示,可以国际化编程,特别对于中文支持更加需要UNICODE编程。
      下面来解释一下参数的定义:
      hWnd是指向父窗口的句柄,如果没有父窗口,可以把这个参数设置为NULL
      lpText是需要显示的文字。显示字符串的起始地址。
      lpCaption是在窗口上标题显示。
      uType是窗口组合按钮和显示图标的类型。后面再详细说明。
      返回值是一个整数,如果有取消按钮,并且按下ESC键就返回IDCANCEL。如果有其它按钮,并且按下,就返回相应的值。主要的值如下:
      IDABORT 放弃按钮
      IDCANCEL取消按钮
      IDCONTINUE 继续按钮
      IDIGNORE 忽略按钮
      IDNO 否按钮
      IDOK 确定按钮
      IDRETRY 重试按钮
      IDTRYAGAIN 重试按钮
      IDYES 是按钮
       
      演示例子如下:
       
      上面显示的代码是:
      #001 //MB_DEFBUTTON4
      #002 int CMsgBox::Show_MB_DEFBUTTON4(void)
      #003 {
      #004 //显示MB_DEFBUTTON4
      #005 return ::MessageBox(NULL, _T("MB_YESNOCANCEL|MB_DEFBUTTON4|MB_HELP"),
      #006         _T("第一个应用程序"), MB_YESNOCANCEL|MB_DEFBUTTON4|MB_HELP|MB_ICONQUESTION);
      #007 }
       
      uType常用的选择值如下:
      按钮类型:
      MB_ABORTRETRYIGNORE
      MB_CANCELTRYCONTINUE
      MB_HELP
      MB_OK
      MB_OKCANCEL
      MB_RETRYCANCEL
      MB_YESNO
      MB_YESNOCANCEL
       
      图标类型:
      MB_ICONEXCLAMATION
      MB_ICONWARNING
      MB_ICONINFORMATION
      MB_ICONASTERISK
      MB_ICONQUESTION
      MB_ICONSTOP
      MB_ICONERROR
      MB_ICONHAND
       
      设置缺省按钮值:
      MB_DEFBUTTON1
      MB_DEFBUTTON2
      MB_DEFBUTTON3
      MB_DEFBUTTON4
       
      修改显示信息窗口的属性:
      MB_APPLMODAL
      MB_SYSTEMMODAL
      MB_TASKMODAL
      MB_RIGHT
      MB_RTLREADING
      MB_SETFOREGROUND
      MB_TOPMOST
      MB_SERVICE_NOTIFICATION 

      发表于 @ 2007年07月31日 14:40:00|评论(loading...)|编辑

      新一篇: 开发工具大比拼之Visual C++ VS Delphi  | 旧一篇: 选择考研无需犹豫的八种人

      评论:没有评论。

      发表评论  


      登录
      Csdn Blog version 3.1a
      Copyright © linhong34