VC++中MessageBox的用法
用VC编程的时候有时候要输入MessageBox (NULL,"你好,我的Visual C++世界!","问候",0) ;有时候又直接输入 MessageBox ("你好,我的Visual C++世界!") 就可以,到底什么时候用那种啊?网上讲的一些 MessageBox的用法都不知道从哪里复制粘贴的,很不靠谱
直接使用API MessageBoxA
MessageBox (NULL,"你好,我的Visual C++世界!","问候",0) ;
使用类中的MessageBox,此时类负责把其他参数填写好.
MessageBox ("你好,我码好汪的Visual C++世界!")
我说一下API
一般袜灶是
MessageBoxA(窗口句柄,内容,标题,消息框样式);
还有一个MessageBoxW,这个是负责处理Unicode字符串的,例如
MessageBoxW(窗口句柄,L"content",L"title",消息框样式迟仔);
其中需要接收字符串的参数都需要传递wchar_t或其衍生类型.
如果窗口句柄传递NULL,那就是不锁定任何已有的窗口.
在类中调用全局方法是在前面加上 :: 如果加了这个,那么只能使用4个参数的了.
::MessageBox(NULL,"","",0);
首先,MessageBox有很多个版本,有SDK的,也有CWnd类成员的等等,各个版本的MessageBox函数的参数不一样。
其氏吵局次,有些版本的MessageBox函数里的参数是有默认值的,就可以不用写。
比碰森如int MessageBox( LPCTSTR lpszText, LPCTSTR lpszCaption = NULL, UINT nType = MB_OK );这个是CWnd里的,歼让后2个参数有默认值,可以不用写。
它的参数有的可以默认,需要的时候用,滑瞎不需要的时候就可以信核空省略,所以没有对错! 你看看两种情况的运行结果就知道有什么氏迟区别了。
查MSDN可以知道它所有参数的含义!
if(messagebox("选择是否执行",null,mb_yesno)==idyes)
{
afxmessagebox("ss");
//这里写你要执行的代码
}
----------------------------------------------
例子:要引入头文件windows.h
#include<iostream.h>
#include<windows.h>
void
main(){
if(messagebox(null,"是否打印大闭没?","choose"态扮,mb_yesno)==idyes)
{
cout<<"sss";
}
}
--------------------------------
当然也可以用mfc做。。由于生成的文件滚纳较多,就不贴了
这个很简单啊,没什么好总结的