I am still fairly new to LabVIEW programming and I have been learning from the online self paced classes. I started in June of 2012.
I am currently working on a new program front panel (host) vi and I am trying to determine a better way to implement a certain section of my code so that it works the way I would like it too. This vi is being designed for a touchscreen interface so all user input is touch screen input.
What I want the code to do: the code is designed so when the user presses the command button on the front panel vi it creates an information pop-up window explaining the parameters for input. The user pushes the OK button (closes the info pop-up) and opens a new sub-vi that is a numeric keypad. If the user input is within the accepted parameters then when 'enter' is pushed the sub-vi closes and inputs the value to a numeric indicator. If the user inputs an incorrect value, then the keypad sub-vi closes and another info window pops up informing the user 'incorrect value - re-enter value' user hits the OK button and closes the info box and reopens the keypad sub-vi. This cycle should continue until the operator inputs a valid value.
What the code does as written: when the user presses the command button on the front panel vi it creates an information pop-up window explaining the parameters for input. The user pushes the OK button (closes the info pop-up) and opens a new sub-vi that is a numeric keypad. If the user input is within the accepted parameters then when 'enter' is pushed the sub-vi closes and inputs the value to a numeric indicator. If the user inputs an incorrect value, then the keypad sub-vi closes and another info window pops up informing the user 'incorrect value - re-enter value' user hits the OK button and closes the info box and reopens the keypad sub-vi. If now on the second attempt the user still inputs an incorrect value and presses 'enter' the keypad sub-vi closes and I have had to defer the value to output '0' (or some minimum allowed value).
So the question I am trying to figure out is this. Is there a better way to implement this section of code to work like I want it to, maybe using shift registers or something and where would they go?
I am using the most current version of LabVIEW 2013.
The code as pictured works great outside the fact that I have to stop it after two attempts otherwise the code would have to be rewritten for each failure and it would look like staring off into oblivion between two mirrors.
Thanks,