Funkcja reagująca na Eventy.

dział ogólny

Funkcja reagująca na Eventy.

Nowy postprzez Arnold_S » poniedziałek, 20 czerwca 2016, 22:07

Witam ponownie. Chciałbym skonstruować funkcję, która mogłaby reagować na wystąpienie zdarzenia dla myszy, lub klawiatury, np.

Kod: Zaznacz cały
void funkcja(jakieś argumenty)
{
    if (wystąpiło zdarzenie TForm1::Edit1mouseUp || TForm1::Edit1mouseDown || ...itd..)
          {
               tutaj reakcja na wystąpienie któregoś z tych zdarzeń
          }
}


Nie bardzo mogę sobie wyobrazić konstrukcję takiej funkcji. Bardzo by mi to ułatwiło. Proszę o pomoc w rozwikłaniu tego problemu.

/edit
Chciałbym nadmienić, że w testowym programie mam 3 pola Edit (każde ma własną nazwę inną niż domyślna). Chciałbym obsługiwać te pola pod kątem zabezpieczenia przed wpisaniem niewłaściwych znaków ale chciałbym aby odbywało się to "ogólnie". Nie chciałbym dla każdego z tych pól Edit tworzyć gąszczu zdarzeń.
Avatar użytkownika
Arnold_S
Homos antropiczny
Homos antropiczny
 
Posty: 58
Dołączył(a): niedziela, 12 czerwca 2016, 23:22
Podziękował : 15
Otrzymał podziękowań: 0
System operacyjny: Win7 64b
Kompilator: C++ Builder 6, Rad Studio XE2
Gadu Gadu: 0
    Windows 7Firefox

Re: Funkcja reagująca na Eventy.

Nowy postprzez Cyfrowy Baron » środa, 22 czerwca 2016, 08:59

Określ dokładnie o co tobie chodzi. Czy chcesz przechwytywać komunikaty wysyłane przez mysz i klawiaturę, czy chcesz wprowadzić ograniczenie uniemożliwiające wpisywanie określonych znaków do pola typu TEdit i jakich konkretnie znaków.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows 7Firefox

Re: Funkcja reagująca na Eventy.

Nowy postprzez Arnold_S » środa, 22 czerwca 2016, 23:07

Faktycznie źle się wyraziłem. Nie chodziło mi o eventy klawiatury lub myszy z WinApi. Chciałem sobie ułatwić i skonstruować funkcję, która "obserwuje" działanie na wybranych komponentach (np.: pola Edit, lub ComboBox) i gdy tylko pojawią się jakieś eventy (np.: OnClick, OnKeyDown lub OnChange) to w odpowiedni sposób zareaguje.
Avatar użytkownika
Arnold_S
Homos antropiczny
Homos antropiczny
 
Posty: 58
Dołączył(a): niedziela, 12 czerwca 2016, 23:22
Podziękował : 15
Otrzymał podziękowań: 0
System operacyjny: Win7 64b
Kompilator: C++ Builder 6, Rad Studio XE2
Gadu Gadu: 0
    Windows 7Firefox

Re: Funkcja reagująca na Eventy.

Nowy postprzez Cyfrowy Baron » środa, 22 czerwca 2016, 23:46

OnCLick, OnKyeDown itp... - Przeiceż obiekty typu TEdit i TComboBox obsługują te zdarzenia. Musisz oprogramować te zdarzenia dla tych obiektów.

Jeżeli chcesz żeby jedna funkcja obsługiwała wszystkie obiekty to musisz posłużyć się rzutowaniem polimorficznym: RZUTOWANIE TYPÓW, PRZYPISANIE POLIMORFICZNE.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows 7Firefox


  • Podobne tematy
    Odpowiedzi
    Wyświetlone
    Ostatni post

Powrót do Ogólne problemy z programowaniem

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 11 gości

cron