import win; var id = win.msgbox("三个按钮","标题",0x3/*_MB_YESNOCANCEL*/)
参考标准库函数:
namespace win { msgboxErr = function(str,title = "错误" ,hwndOwner=0 ){ return msgbox( str,title,0x10/*_MB_ICONHAND*/); } msgboxTest = function(str,title ,hwndOwner=0){ return msgbox(str,title,0x1 | 0x20 /*_MB_OKCANCEL|_MB_ICONQUESTION*/ ,hwndOwner ) == 1; } }
win.msgbox 实际上调用的是 MessageBox, 其他可选的参数:
标志 | 含义 |
MB_ABORTRETRYIGNORE | 消息框含有三个按钮:Abort,Retry和Ignore |
MB_OK | 消息框含有一个按钮:OK。这是缺省值 |
MB_OKCANCEL | 消息框含有两个按钮:OK和Cancel |
MB_RETRYCANCEL | 消息框含有两个按钮:Retry和Cancel |
MB_YESNO | 消息框含有两个按钮:Yes和No |
MB_YESNOCANCEL | 消息框含有三个按钮:Yes,No和Cancel |
指定下列标志中的一个来显示消息框中的图标,标志的含义如下。
标志 | 含义 |
MB_ICONEXCLAMATION | 一个惊叹号出现在消息框 |
MB_ICONWARNING | 一个惊叹号出现在消息框 |
MB_ICONINFORMATION | 一个圆圈中小写字母i组成的图标出现在消息框 |
MB_ICONASTERISK | 一个圆圈中小写字母i组成的图标出现在消息框 |
MB_ICONQUESTION | 一个问题标记图标出现在消息框 |
MB_ICONSTOP | 一个停止消息图标出现在消息框 |
MB_ICONERROR | 一个停止消息图标出现在消息框 |
MB_ICONHAND | 一个停止消息图标出现在消息框 |
指定下列标志中的一个来指示缺省的按钮,标志的含义如下。
标志 | 含义 |
MB_DEFBUTTON1 | 第一个按钮为缺省按钮。如果MB_DEFBUTTON2,MB_DEFBUTTON3,MB_DEFBUTTON4没有被指定,则MB_DEFBUTTON1为缺省值 |
MB_DEFBUTTON2 | 第二个按钮为缺省按钮 |
MB_DEFBUTTON3 | 第三个按钮为缺省按钮 |
MB_DEFBUTTON4 | 第四个按钮为缺省按钮 |
指定下列标志中的一个来显示对话框的形态,标志的含义如下。
标志 | 含义 |
MB_APPLMODAL | 在hwnd参数标识的窗口中继续工作以前,用户一定响应消息框。但是,用户可以移动到其他线程的窗口且在这些窗口中工作。根据应用程序中窗口的层次机构,用户则以移动到线程内的其他窗口。所有母消息框的子窗口自动地失效,但是弹出窗口不是这样。如果既没有指定MB_SYSTEMMODAL也没有指定MB_TASKMOOAL,则MB_APPLMODAL为缺省的。 |
MB_SYSTEMMODAL | 除了消息框有WB_EX_TOPMOST类型,MB_APPLMODAL和MB_SYSTEMMODAL一样。用系统模态消息框来改变各种各样的用户,主要的损坏错误需要立即注意(例如,内存溢出)。如果不是那些与hwnd联系的窗口,此标志对用户对窗口的相互联系没有影响。 |
MB_TASKMODAL | 如果参数hwnd为NULL的话,那么除了所有属于当前线程高层次的窗口失效外,MB_TASKMODALL和MB_APPLMODAL一样。当调用应用程序或库没有一个可以得到的窗口句柄时,使用此标志。但仍需要阻止输入到调用线程的其他窗口,而不是搁置其他线程。 |
另外,可以指定下列标志。
标志 | 含义 |
MB_DEFAULT_DESKTOP_ONLY | 接收输入的当前桌面一定是一个缺省桌面。否则,函数调用失败。缺省桌面是一个在用户已经纪录且以后应用程序在此上面运行的桌面。 |
MB_HELP | 把一个Help按钮增加到消息框。选择Help按钮或按F1产生一个Help事件。 |
MB_RIGHT | 文本为右调整 |
MB_RTLREADING | 用在Hebrew和Arabic系统中从右到左的顺序显示消息和大写文本。 |
MB_SETFOREGROUND | 消息框变为前景窗口。在内部系统为消息个调用SetForegroundWindow函数。 |
MB_TOPMOSI | 消息框用WS_EX_TOPMOST窗口类型来创建MB_SERVICE_NOTIFICATION。 |
如果此函数成功,返回值是以下菜单项值中的一个
返回标志 | 值 | 含义 |
IDABORT | 选择放弃按钮。 | |
IDCANCEL | 选择取消按钮。 | |
IDCONTINUE | 选择继续按钮。 | |
IDIGNORE | 选择忽略按钮。 | |
IDNO | 选择否按钮。 | |
IDOK | 选择确定按钮。 | |
IDRETRY | 选择重试按钮。 | |
IDTRYAGAIN | 选择重试按钮。 | |
IDYES | 选择是按钮。 |