Jak zaprogramowac OnClick w komponencie?

0

Temat: Jak zaprogramowac OnClick w komponencie?
Autor: Redoubtable

Opis: Pisze po prostu komponent. Jest OnMouseEnter, OnMouseLeave (zgadnijcie, skad? :)) itd.
Ale teraz bym bardzo chcial wszystkie inne wazniejsze zdarzenia, jak OnKeyPress (bez obawy - komponent juz ma 'Focus'), OnMouseDown, OnClick itd. Sorry - moglbym to zrobic sam, ale wyszloby mi dopiero za jakies dwa tygodnie. A ja jestem leniwy (a kto nie jest? :)). Prosze o malodlugie :) odpowiedzi.

Thx in advance - Redoubtable

Sonda:

0

poczytaj artykul "Komponenty"
http://www.4programmers.net/delphi/compontn.html
---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

czytalem i nic takiego tam nie bylo. ale sprawdze jeszcze raz. dzieki.

0

a czy twoj komponent jest dziedziczny dla jakiegos standardowego komponentu np. TEdit?
---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

tak, jest to tlabel.

0

Dodaj w published

property OnClick;

i tyle. Automatycznie pojawi sie Event OnClick do twojego komponentu [w D6 PE na pewno]. Ten sposob jest dobry gdy po prostu chcesz zeby komponent mial taki event.
Natomiast jeśli chcesz aby komponent reagował w sposob okreslony przez ciebie na klikniecie myszi, a potem wykonywal procedure przypisana to musisz troche wiecej dopisac i overridowac procedure czy jakos tak:)

Troche nagmatwalem, sorki. -------[ Delphi 6 Rulez 4 Ever!, przynajmniej do czasu gdy naucze sie C++ :) ]------

0

no sheitar. dzieki. troche mi wstyd, bo probowalem property Click zamiast OnClick...

0

Natomiast jeśli chcesz aby komponent reagował w sposob okreslony przez ciebie na
klikniecie myszi, a potem wykonywal procedure przypisana to musisz troche wiecej
dopisac i overridowac procedure czy jakos tak

aby to zrobic piszesz cos takiego(zrobilem to na przykladzie OnMouseDown):
najpierw w sekcji protected

procedure MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;

a potem w implementation

procedure TTwojKomponent.MouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
twoje procedurki np.
ShowMessage('tralalalal');
inherited MouseDown(Button, Shift, X, Y); //to najwazniejsza czesc
end;---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

dzieki. co prawda pytalem o OnCLick, ale w glebi duszy liczylem, ze jakis dobry czlowiek powie mi wiecej... Dzieki, LKS!

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0