Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Pewnie podstawy Delphi

32 views
Skip to first unread message

Miroslaw Rogula

unread,
Apr 11, 2022, 3:00:56 PM4/11/22
to
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

MKi

unread,
Apr 12, 2022, 3:30:01 AM4/12/22
to
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

Miroslaw Rogula

unread,
Apr 13, 2022, 4:41:24 AM4/13/22
to
Dzięki za inspirację. Przydała się do poprawy działania programu :)
0 new messages