无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 2580|回复: 3
打印 上一主题 下一主题

请教“msgbox”返回值的判断问题。【已解决】

[复制链接]
跳转到指定楼层
1#
发表于 2007-11-5 20:58:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教“msgbox”返回值的判断问题。
对于两种返回值的,比如MB_YESNO类型的,yes是6,no是7。此时我可以采用以下办法取得:
msgbox 标题 内容 0x24 |find /i "6">nul &&goto yes
goto no
可是对于有3中返回结果的,如MB_YESNOCANCEL类型的,请问如何取得返回结果,并执行相应操作?
谢谢。
--------------------------
附:msgbox使用方法:
msgbox 标题 内容 类型

类型:表示要显示的消息框的类型,有以下几种类型,如果要包含多种类型可以将几种类型相加。
类型可取以下值
MB_OK                       0x00000000
MB_OKCANCEL                 0x00000001
MB_ABORTRETRYIGNORE         0x00000002
MB_YESNOCANCEL              0x00000003
MB_YESNO                    0x00000004
MB_RETRYCANCEL              0x00000005

MB_ICONHAND                 0x00000010
MB_ICONQUESTION             0x00000020
MB_ICONEXCLAMATION          0x00000030
MB_ICONASTERISK             0x00000040

MB_USERICON                 0x00000080
MB_ICONWARNING              0x00000030
MB_ICONERROR                0x00000010

MB_ICONINFORMATION          0x00000040
MB_ICONSTOP                 0x00000010
MB_DEFBUTTON1               0x00000000
MB_DEFBUTTON2               0x00000100
MB_DEFBUTTON3               0x00000200
MB_DEFBUTTON4               0x00000300

MB_APPLMODAL                0x00000000
MB_SYSTEMMODAL              0x00001000
MB_TASKMODAL     
MB_HELP                     0x00004000

MB_NOFOCUS                  0x00008000
MB_SETFOREGROUND            0x00010000
MB_DEFAULT_DESKTOP_ONLY     0x00020000

MB_TOPMOST                  0x00040000
MB_RIGHT                    0x00080000
MB_RTLREADING               0x00100000
返回值:表示你按下哪个按钮(确定,取消……)
返回值可取以下值
IDOK                1
IDCANCEL            2
IDABORT             3
IDRETRY             4
IDIGNORE            5
IDYES               6
IDNO                7
IDCLOSE         8
IDHELP          9

[ 本帖最后由 lianjiang 于 2007-11-6 07:20 AM 编辑 ]

msgbox.rar

2.42 KB, 下载次数: 51, 下载积分: 无忧币 -2

2#
 楼主| 发表于 2007-11-5 21:00:30 | 只看该作者
说明:是批处理里面用。
回复

使用道具 举报

3#
发表于 2007-11-5 22:15:39 | 只看该作者
@echo off
for /f %%a in ('c:\msgbox.exe 001 333 3') do (
if %%a==6 goto 6
if %%a==2 goto 2
)
:7
echo 7
goto :end
:6
echo 6
goto :end
:2
echo 2
:end
pause
回复

使用道具 举报

4#
 楼主| 发表于 2007-11-5 22:22:17 | 只看该作者
明白了,可以这样取得呀,谢谢了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-8-21 17:55

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表