gm860419 发表于 2012-10-20 23:49:50

select 的问题 帮忙给看下 附码

本帖最后由 gm860419 于 2012-10-21 13:58 编辑

Dim $a, $b
Do
        $a = InputBox(64, '提示用户输入年龄,如果大于等于18,则可以查看成人电影', '请输入年龄')
        If @error = 1 Then Exit
        Select
                Case $a >= 18
                        MsgBox(0 + 64, '成人电影', '请您欣赏“今夜难眠”')
                Case $a < 10
                        MsgBox(16, '警告', '未满18周岁,禁止查看')
                Case $a >= 10 And $a < 18
                        $b = InputBox('提示', '如果大于等于10岁并且小于18,则提示用户是否继续查看(yes、no)')
                        If @error = 1 Then Exit
                        If $b = "yes" Then
                                MsgBox(0, '恭喜', '请查看');还有这个提示完以后,点击确定应该退出的,现在也不退,写什么代码退出啊
                        ElseIf $b <> 'yes' Then
                                MsgBox(21, '警告', '您输入有误,请重试或者取消');这段的取消点击完以后怎么不退出,又去首段了,这个退出怎么编写啊
                        EndIf
                Case Else
                        MsgBox(0, '提示', '不可以查看')
        EndSelect
Until $a = 18 And $b = "yes"

2个问题
1、ElseIf $b <> 'yes' Then
                MsgBox(21, '警告', '您输入有误,请重试或者取消');这段的取消点击完以后怎么不退出,又去首段了,这个退出怎么编写啊
2、If $b = "yes" Then
                MsgBox(0, '恭喜', '请查看');还有这个提示完以后,点击确定应该退出的,现在也不退,写什么代码退出啊

netegg 发表于 2012-10-21 00:05:14

没明白到底什么要求

yinbinly 发表于 2012-10-21 09:14:02

                If $b = "yes" Then
                        MsgBox(0,'恭喜','请查看')
                     ;EndIf
                Else
                        MsgBox(0,'提示','不可以查看')
                                                EndIf改成这样试试

user3000 发表于 2012-10-21 13:29:44

本帖最后由 user3000 于 2012-10-21 13:34 编辑

按代码的"意图",主要改了两个地方
Dim $a, $b
Do
        $a = InputBox(64, '提示用户输入年龄,如果大于等于18,则可以查看成人电影', '请输入年龄')
        If @error = 1 Then Exit
        Select
                Case $a >= 18
                        MsgBox(0 + 64, '成人电影', '请您欣赏“今夜难眠”')
                Case $a < 10
                        MsgBox(16, '警告', '未满18周岁,禁止查看')
                Case $a >= 10 And $a < 18
                        $b = InputBox('提示', '如果大于等于10岁并且小于18,则提示用户是否继续查看(yes、no)')
                        If $b = "yes" Then
                                MsgBox(0, '恭喜', '用户继续')
                        Else
                                MsgBox(0, '提示', '用户退出')
                        EndIf
        EndSelect
Until $a >= 18 Or $b = "yes"

netegg 发表于 2012-10-21 14:54:39

回复 1# gm860419

第一个问题, $b='yes'条件不满足,返回循环首
第二个问题,输入yes,只满足$b='yes'这个条件,但$a不可能等于18,返回循环首

gm860419 发表于 2012-10-22 09:28:39

哦 明白了谢谢 元老 {:face (356):}
页: [1]
查看完整版本: select 的问题 帮忙给看下 附码