欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

利用字符串资源显示MessageBox

程序员文章站 2022-06-19 22:24:00
利用字符串资源显示MessageBox...
c++代码
//////////////////////////////////////////////////////////////////////////
// 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的代码对字符串的长度进行动态计算。