Connection Information

To perform the requested action, WordPress needs to access your web server. Please enter your FTP credentials to proceed. If you do not remember your credentials, you should contact your web host.

Connection Type

Window Events trigger in different order if WindowState = Maximized! – PB Docs 2022 – PowerBuilder Library

Window Events trigger in different order if WindowState = Maximized! – PB Docs 2022

Window Events trigger in different order if WindowState =
Maximized!

Phenomenon

If the WindowState property of a Window is set to Normal! the
order of the Open and Activate events is in this order:

  1. Open

  2. Activate

But if the WindowState property is changed to Maximized! then the
order of the events is as follows:

  • Open (event starts)

  • ​Activate

  • ​Open (event ends)

Scenario

WindowState set as Normal!:

  1. Create a Window with it’s WindowState property set as
    Normal!

  2. Open the Window using either one of these functions: Open,
    OpenWithParm, OpenSheet, OpenSheetWithParm.

  3. The order of the Open and Activate events gets triggered as
    follows:

    1. ​Open

    2. Activate

WindowState set as Maximized!:

  1. Create a Window with it’s WindowState property set
    as Maximized!

  2. Open the Window using either one of these functions: Open,
    OpenWithParm, OpenSheet, OpenSheetWithParm.

  3. The order of the Open and Activate events gets triggered as
    follows:

    1. ​Open (event starts)

    2. ​Activate

    3. ​Open (event ends)

Cause

Event trigger order may change from version to version of
PowerBuilder. Also, events can trigger multiple times one after another
(in example: {Open, Activate, Open} or {Open, Activate, Open, Activate},
etc…)

Workaround

  1. Add an instance variable (ie: ib_open_completed).

  2. Change your activate code to … IF ib_open_completed = TRUE
    THEN … do your code.

  3. Add a ue_postopen user event & POST that from the Open
    event.

  4. In the ue_postopen event, set the ib_open_completed =
    TRUE.

This should enable you to really control the order in which your
code is triggered.

Notes: Changing the WindowState property

Do not change the WindowState Property in the Open event of a
window opened as a sheet. Doing so might result in duplicate controls on
the title bar. You can change the property in other scripts once the
window is opened.


Document get from Powerbuilder help
Thank you for watching.
Was this article helpful?
Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x