共享家园
一个您共享心情,共享技术,共享快乐的地方。感谢您的浏览
posts - 0,comments - 0,trackbacks - 0

//////////////////////////////////////////////////////////////////////////
// InfoBox
// 利用字符串资源显示MessageBox
// hParent - 父窗口句柄
// uIDString - 字符串资源ID
// lpszCaption - MessageBox窗口标题
// uType - 同MessageBox最后一个参数
// 返回值:同MessageBox
// 备注:
// 1.可以像wsprintf那样加入可选附加参数;
// 2.最大字符串长度为MAX_PATH。
//////////////////////////////////////////////////////////////////////////

int CDECL InfoBox( HWND hParent, UINT uIDString, LPCTSTR lpszCaption, UINT uType, ... )
{
  va_list arglist;
  TCHAR str[MAX_PATH], strLoad[MAX_PATH];
  va_start( arglist, uType );
  LoadString( NULL, uIDString, strLoad, MAX_PATH );
  wvsprintf( str, strLoad, arglist );
  va_end( arglist );
  return MessageBox( hParent, str, lpszCaption, uType );
}


补充两点:第一,字符串资源是一种很好用的资源,利用字符串资源显示MessageBox可以使消息文本容易更改;第二,字符串有长度的限制,如果希望突破这种限制,可以参考MFC中CString::Format的代码对字符串的长度进行动态计算。

posted on 2005-10-10 16:31 共享家园 阅读(178) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航:   博客园   博客园最新博文   博问   管理