Window state and order of appearance of multiple windows sequentially


#1

Hello

I am running into a error regarding how what order I want specific windows to appear in. I have tried two different methods.

Method 1:

  • Change the z-axis ( sending the window i want to be on the background to appear first and stacking the other three windows on top of that window, in the order that I prefer) This doesn’t work because the other 3 windows are smaller than the last window which covers other 3 windows.

Method 2:

  • I tried using window state. The thought process I used was that I would click a button on a screen which would pop up the first window ( bottom window- the biggest one ) and also send a value (1)to the controller. I have to use a new integer variable in the strategy for this. In the PAC Display I would catch the value that I had sent in the window state ( configure-> window state). And by increasing the value of the tag ( previously created variable for this purpose ), I would pop open another window.
    But the second window isn’t showing up. Neither behind the first one, nor infront of it.

Can I get some pointers on window state or what I am doing wrong here.

Thanks!
innotech01


#2

If I’m following your method 2 correctly, the following steps are involved:

  1. Create the button to open the first window. This button has in its dynamic attributes a “Windows - Open” command that opens your big window, and a “Send Value” command that sets some I32 tag (let’s say, nWindow_Counter) to 1.

  2. In the PAC Display Window State Manager, there is an entry that triggers when nWindow_Counter = 2. That entry is set to open your 2nd window. The refresh time that is set on the trigger will control how often PAC Display is looking for nWindow_Counter = 2.

  3. In the PAC Display Window State Manager, there is an entry that triggers when nWindow_Counter = 3. That entry is set to open your 3rd window. The trigger refresh time should probably be the same as above.

  4. Your PAC Control strategy looks for the nWindow_Counter tag to be set to 1, and then increments it to 2. After that, a delay that is somewhat longer than the trigger refresh time should be put in, so that PAC Display has time to see the trigger before the tag changes to something else. Once the delay is complete, the strategy increments nWindow_Counter to 3, and again delays long enough for PAC Display to see the trigger.

Did I understand what you are trying to do correctly? If you take a screenshot of what the three windows look like when stacked properly (even if you have to manually put them there), that might help stir up some other ideas.


#3

Hi sensij,

  1. correct

  2. correct, after the first window opens, there is a 2.0 seconds delay and then the 2nd window that opens is in front of the big window. I don’t understand what you mean by the refresh time is set on the trigger which controls how often the PAC Display is looking for nWindow_Counter =2. What I did is when the first window is opened a variable nWindow_Counter =1. Then the value of the variable nWindow_Counter increased to 2 in the PAC Control and in the display ( Configure -> Window State ) the variable nWindow_Counter >= 1 which should open up the 2nd window which should open up the second window since 2( which is set in PAC Control ) is greater than 1. But this isn’t how it’s working out to be. Same goes with the window 3 and window 4.


#4

When you create the window state, and link the trigger to a tag, you will see a “Value Tag Selection” window. In the lower right is where the refresh time for the trigger is at, it is 500 ms in the screenshot below. Make sure that this time is set safely under the delay time in your strategy, so that the trigger has time to see the tag before its value changes.

I would avoid the “>=” comparator in this case and stick with “=”. Current Value = 2 would be the trigger for the 2nd window, Current Value =3 would be the trigger for the third window, etc. Also make sure the Pop Window settings are correct. Below is an example of what it looks like if it is to open a window named “Error”.

If you can provide screenshots of your window state manager settings, or attach the strategy / display files, you might be able to get more specific advice.

[ATTACH=CONFIG]516[/ATTACH]

[ATTACH=CONFIG]517[/ATTACH]


#5

Hi Sensij,

I will make the changes as you recommended and will let you know what is the outcome.