ich hab mir mal deinen Code angesehen ... ufff
Thema : MDI Fenster und Eventloop
suche mal im MDIDEMO Sample wie oft du
Code: Alles auswählen
nEvent := AppEvent( @mp1, @mp2, @oXbp )
in Main ist nun deine Eventloop und wenn du bei Ansicht/Browse oder Eingabe/Edit ein Fenster öffnest hast du jeweils eine Eventloop ... das gibt "so" Chaos
wenn du weiter Eventloop verwenden willst dann nimm Thread() ... dann gibt es auch keine ALIAS() Probleme
p.s. ich halte diesen Code für falsch
Code: Alles auswählen
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2, oXbp )
IF nEvent==xbeP_Keyboard
Code: Alles auswählen
nEvent := AppEvent( @mp1, @mp2, @oXbp ,100)
oXbp:handleEvent( nEvent, mp1, mp2, oXbp )
Code: Alles auswählen
nEvent := AppEvent( @mp1, @mp2, @oXbp,100 )
DO CASE
CASE nEvent == xbe_None // nTimeout
CASE nEvent == xbeP_Keyboard .AND. mp1 == xbeK_ESC
CASE nEvent == xbeP_Keyboard .AND. mp1 == xbeK_ENTER
OTHERWISE
oXbp:handleEvent( nEvent, mp1, mp2, oXbp )
ENDCASE