ďťż

Ładny brzuch

Siema, mam mały problem. Mianowicie mam do zrobienia komponent w C++Builderze, ma on wykonywać jakąś akcje po kliknięciu na nim myszką, czyli musi obsługiwać zdarzenie onclick.Niestety nie bardzo wiem jak to zrobić. Dzieki z góry za wszystkie odp.



Może jakaś mała wskazówka, za wszelką pomoc będe baaaardzo wdzięczny :)

Niestety (dla Ciebie) ObjectPascal jest tu bardziej rozchwytywanym językiem. Poszukaj sobie na 4p - tam powinno przecież być ;)

to ma byc calkowicie dowolny komponent?
i z tym klikaniem chodzi ci o to zeby komponent wykonywal jakakolwiek akcje, czy zeby posiadal zdarzenie onclick tak jak na przyklad button i programista podpina pod nie jakas akcje?
zaliczenia i sesja sie zbliza? ;)

pozdrawiam
pepsi^no1



A więc pomagam koledze w zrobieniu projektu na zaliczenie. Ma zrobic komponent - przycisk dwustanowy( np. taki włącznik światła na ścianie ), po kliknieciu na niego zmienia sie obrazek. Czyli sam chce oprogramować co sie stanie gdy klikne na komponent, uzytkownik takiego komponentu po prostu wrzuca go na forme i ma działać, po kliknieciu ma sie zmieniac obrazek -> nic nie oprogramowuje. Dzieki że w końcu ktoś sie zainteresował :)

no to ja bym stworzyl komponent dziedziczacy z na przyklad TCustomControl.
nastepnie stworzylbym sobie typ wyliczeniowy powiedzmy eState z mozliwymi wartosciami sUp i sDown okreslajacymi stan przycisku.
Wystarczy tylko przeciazyc metody:
DYNAMIC void __fastcall MouseUp(TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
DYNAMIC void __fastcall MouseDown(TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
w ktorych bedziesz ustawiac stan przycisku oraz metode:
virtual void __fastcall Paint(void);
w ktorej bedziesz odmalowywac przycisk. TCustomControl posiada Canvas wiec nie powinno byc problemu z obsluga tej metody, po prostu w zaleznosci od stanu przycisku bedziesz wrzucac na canvas jeden albo drugi obrazek.

pozdrawiam
pepsi^no1

Dzieki pepsi za pomoc , ale zrobilem to troche inaczej. Mój komponent dziedziczy z TGraphicControl, przeciążyłem metode
DYNAMIC void __fastcall Click(void);

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •