AfxMessageBox()与MessageBox()的区别
2013-08-09 15:50
330 查看
1. 用法不同
AfxMessageBox:比较简单,是一个全局函数所以不需要对应的一个窗口类,但是不能控制消息框标题,常用于调试程序时的内部数据输出或警告,使用时要加上头文件afxwin.h中,不过该文件一般自动列在stdafx中了;
MessageBox:比较正式,常用在要提交的应用程序版本中,可以控制标题内容而不必采用含义不明的可执行文件名为标题,使用时在CWnd的子类中使用比较简单,在非子类中用法相对比较麻烦。
2. 声明形式不同
AfxMessageBox的声明形式 :
int AfxMessageBox( LPCTSTR lpszText, UINT nType = MB_OK, UINT nIDHelp = 0 );
MessageBox的声明形式:
int WINAPI MessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType);
3. 用法举例
AfxMessageBox:
AfxMessageBox(_T("请首先建立八叉树!"))
MessageBox:
这是C~doc类中调用MessageBox的情景,可见要比AfxMessageBox用法麻烦的多
m_gOctree->SetRevolutionNum(t);
int cur_rev=m_gOctree->GetRevolutionNum();
CString str;
str.Format(_T("当前所设定的分辨率为:%d*%d*%d!"),
static_cast<int>(pow(static_cast<float>(2),static_cast<float>(cur_rev))),
static_cast<int>(pow(static_cast<float>(2),static_cast<float>(cur_rev))),
static_cast<int>(pow(static_cast<float>(2),static_cast<float>(cur_rev))));
CMainFrame* pMainFrame=(CMainFrame*)(AfxGetApp()->m_pMainWnd);
HWND hwnd=pMainFrame->GetSafeHwnd();
MessageBox(hwnd,str,_T("分辨率"),MB_OKCANCEL);Reference:
http://baike.baidu.com/view/1441706.htm
http://baike.baidu.com/view/927800.htm
http://baike.baidu.com/view/1344257.htm
AfxMessageBox:比较简单,是一个全局函数所以不需要对应的一个窗口类,但是不能控制消息框标题,常用于调试程序时的内部数据输出或警告,使用时要加上头文件afxwin.h中,不过该文件一般自动列在stdafx中了;
MessageBox:比较正式,常用在要提交的应用程序版本中,可以控制标题内容而不必采用含义不明的可执行文件名为标题,使用时在CWnd的子类中使用比较简单,在非子类中用法相对比较麻烦。
2. 声明形式不同
AfxMessageBox的声明形式 :
int AfxMessageBox( LPCTSTR lpszText, UINT nType = MB_OK, UINT nIDHelp = 0 );
MessageBox的声明形式:
int WINAPI MessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType);
3. 用法举例
AfxMessageBox:
AfxMessageBox(_T("请首先建立八叉树!"))
MessageBox:
这是C~doc类中调用MessageBox的情景,可见要比AfxMessageBox用法麻烦的多
m_gOctree->SetRevolutionNum(t);
int cur_rev=m_gOctree->GetRevolutionNum();
CString str;
str.Format(_T("当前所设定的分辨率为:%d*%d*%d!"),
static_cast<int>(pow(static_cast<float>(2),static_cast<float>(cur_rev))),
static_cast<int>(pow(static_cast<float>(2),static_cast<float>(cur_rev))),
static_cast<int>(pow(static_cast<float>(2),static_cast<float>(cur_rev))));
CMainFrame* pMainFrame=(CMainFrame*)(AfxGetApp()->m_pMainWnd);
HWND hwnd=pMainFrame->GetSafeHwnd();
MessageBox(hwnd,str,_T("分辨率"),MB_OKCANCEL);Reference:
http://baike.baidu.com/view/1441706.htm
http://baike.baidu.com/view/927800.htm
http://baike.baidu.com/view/1344257.htm
相关文章推荐
- MessageBox、::MessageBox 、AfxMessageBox区别
- AfxMessageBox()和MessageBox()区别 详解
- AfxMessageBox()和MessageBox()的区别 & PCH预编译头文件(201...
- AfxMessageBox与MessageBox的区别
- MFC中AfxMessageBox和MessageBox的区别
- AfxMessageBox和MessageBox区别[转]
- MessageBox、AfxMessageBox、::MessageBox三者功能和区别小结
- AfxMessageBox和MessageBox区别
- AfxMessageBox和MessageBox区别
- AfxMessageBox与MessageBox的区别
- AfxMessageBox与MessageBox的区别
- AfxMessageBox和MessageBox有什么区别
- [转]AfxMessageBox()与MessageBox()的区别
- VC 中 AfxmessageBox和MessageBox区别
- MessageBox、::MessageBox 、AfxMessageBox三者的区别
- AfxMessageBox和MessageBox的区别
- AfxMessageBox和MessageBox区别
- AfxMessageBox与MessageBox的区别
- AfxMessageBox与MessageBox的区别
- AfxMessageBox和MessageBox区别 .