用字符串资源显示MessageBox[转载]

博客介绍了利用字符串资源显示MessageBox的InfoBox函数,说明了其参数、返回值及备注,指出可加入可选附加参数,最大字符串长度为MAX_PATH。还补充两点,一是利用字符串资源显示消息文本易更改,二是可参考MFC中CString::Format代码突破长度限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//////////////////////////////////////////////////////////////////////////
// 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的代码对字符串的长度进行动态计算。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值