W dniu 2022-04-11 o 21:00, Miroslaw Rogula pisze:
> Zastanawiam się w jaki sposób można dowiedzieć się w procedurze OnExit jaki inny obiekt spowodował wyjście z danego obiektu. Np jesteśmy w edit1 i po naciśnięciu button1 chcę wiedzieć w procedurze editExit(Sender : TSender) że był naciśnięty button1. Myślałem kiedyś że to Sender mi powie co zostało naciśnięte - ale okazało się że nie Nie do tego służy. Czy ktoś mnie oświeci ?
> Pozdrawiam
> Mirosław Rogula
>
Wpierw wypadałoby zdefiniować "obiekt spowodował wyjście
z danego obiektu". Domyślam się, że chodzi Cio kontrolkę,
w którą użytkownik kliknie myszą lub kontrolkę, która dostaje
fokus po naciśnięciu jakiegoś klawisza (TAB, różne skróty itd).
Jak dla mnie, w w OnExit program jeszcze nie wie, jaka jest
przyczyna wyjścia.
W Twoim przykładzie będzie wywołane wpierw OnExit dla Edit1,
a później OnEnter w Button1 i tam należy oprogramować
zdarzenie, w którym jest potrzebna przyczyna wyjścia z Edit1.
W ogólności tak zrobić dla wszystkich możliwych przyczyn
(na przykład naciśnięcia F10 w celu wejścia do głównego menu).
Czyli wyobrażam sobie w OnExit dla Edit1 zapamiętać, skąd
wychodzimy a w OnEnter wszystkich pozostałych kontrolek
to obsłużyć.
Pozdrowienia,
MKi