Jump to content

Select...Case with multiple match


Recommended Posts

Hello,

Assuming i have a variable can have 3 status, 0 - 1 - 2. At this 0 - 1 - 2 i have different event but i want to make a "pre" funtion if 1 or 2 is the variable.

Like

var = 0 do func 0

var= 1 do prefunc AND func 1

var=2  do prefunc AND func 2

In this way seems not work:

$iVar = 1

Select
    Case $iVar = 0
        ConsoleWrite("RUN FUNC 0" & @CR)
    Case $iVar = 1 Or $iVar = 2
        ConsoleWrite("PRE_FUNC" & @CR)
    Case $iVar = 1
        ConsoleWrite("RUN FUNC 1" & @CR)
    Case $iVar = 2
        ConsoleWrite("RUN FUNC 2" & @CR)
EndSelect

How i can make everything in the same Select? Thanks

Edited by MyEarth
Link to comment
Share on other sites

$iVar = 1

Select
    Case $iVar = 0
        ConsoleWrite("RUN FUNC 0" & @CR)
    Case $iVar = 1
        ConsoleWrite("PRE_FUNC" & @CR)
        ConsoleWrite("RUN FUNC 1" & @CR)
    Case $iVar = 2
        ConsoleWrite("PRE_FUNC" & @CR)
        ConsoleWrite("RUN FUNC 2" & @CR)
EndSelect

 

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Link to comment
Share on other sites

Well yes it works but its not what i have in my mind, why the select not work in my way of coding? A case is 1 or 2 so match, another case is 1 so match, why i have only one ConsoleWrite? Also in a loop give the same result

Link to comment
Share on other sites

Because when you run this line :  Case $iVar = 1 Or $iVar = 2, it won't run any case statement after it. So if $iVar is 1 or 2, that's the only line getting actioned.

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Link to comment
Share on other sites

So pratically i need to nested the Select...ContinueCase also don't give the expected result, work with 1 but not with 2 for a valid reason.

$iVar = 1

Select
    Case $iVar = 0
        ConsoleWrite("RUN FUNC 0" & @CR)
    Case $iVar = 1 Or $iVar = 2
        ConsoleWrite("PRE_FUNC" & @CR)
        Select
            Case $iVar = 1
                ConsoleWrite("RUN FUNC 1" & @CR)
            Case $iVar = 2
                ConsoleWrite("RUN FUNC 2" & @CR)
        EndSelect
EndSelect

 

Edited by MyEarth
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...