OpenSheetWithParm when opens a sheet from a menu item, menu item's Clicked event is not released immediately. instead all constructors of controls in the sheet are fired next, then open event is fired, after open event the activate event is fired and then if there are tab controls in the sheet then all selectionchanged events are fired of all tab controls.
During all that events processing the Clicked event of menu item (from which OpenSheetWithParm was called) remains hanging/unfinished/undone in the background. And as soon selectionchanged events are done the Clicked event is released.
Probelm i am facing is that declared Instance variables in the sheet are reset when process/focus goes back to Clicked event of menu item to close/finish itself. It does not mean that the Clicked script is not executed completely but something like a thread remain intact with Clicked event untill selectionchanged events are not done in the sheet.
Next thing is more confusing. When Clicked event's thread is destroyed focus is given back to the sheet and then at that time those events start firing one by one that were posted in constructors of controls in the sheet. In this process the jumping from sheet to menu backward releases instance variables. The variable specifically i am checking is a DataWindowChild as instance variable of the sheet which is reset and i have to re initialize it in posted _open event.
what i understand about this behavior is that some processing in sheet is completed immediately and some is left untill Click event's thread goes back to menu item script and close/destroy itself.
Is this behavior normal for menu item's clicked event?
Is it possible to tell clicked event to just open the sheet and die immediately( disregard anything that happens in the sheet but dont go back to the menu item event?
Is it possible to keep instance variables alive even if focus is shifted from sheet to menue?
Do you think i overlooked some problem in the events order?