• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zrobiłem dynamicznie obiekt jak teraz wejść w zdarzenie OnClick ? C++ builder

0 głosów
1,483 wizyt
pytanie zadane 16 sierpnia 2015 w C i C++ przez Pixel040 Gaduła (3,100 p.)
edycja 16 sierpnia 2015 przez Pixel040
TScrollBox* Obiekt1 = new TScrollBox(this);
Obiekt1->Parent = Form1;

Proszę o pomoc

 

2 odpowiedzi

0 głosów
0 głosów
odpowiedź 16 sierpnia 2015 przez Bartek85 Mądrala (7,440 p.)

Hm...

Do pliku nagowkowego dodaj sobie deklaracje metodz ktora będzie obsługiwać Twoje zdarzenie. Tutaj pamiętaj, że protoyp tej metody musi być taki sam jak oczekuje tego zdarzenie OnClick komponentu.

Później w kodzie przypinasz Twoję metodę do zdarzenia komponentu.

//W pliku nagłówkowym klasy dodajesz prototyp metody do klasy która będzie go obsługiwać

....
void __fastcall OnClick(TObject* sender);
....
//Implementacja tej metody

void __fastcall TMyClass::OnClick(TObject* sender)
{
//....
}
// I tam gdzie Tworzysz dynamiczny obiekt przypinasz stworzona przez siebie metodę do dynamicznego obiektu

TScrollBox* Obiekt1 = new TScrollBox(this);
Obiekt1->OnClick = &OnClick;
Obiekt1->Parent = Form1;

 

komentarz 16 sierpnia 2015 przez Pixel040 Gaduła (3,100 p.)
nie mam klasy
komentarz 16 sierpnia 2015 przez jeremus Maniak (59,720 p.)
zrób tak jak kolega Bartek85 radzi - taki kod zadziala

void __fastcall TForm1::Button1Click(TObject *Sender)
{
         TScrollBox* Obiekt1 = new TScrollBox(this);
         Obiekt1->Parent = Form1;
         Obiekt1->OnClick=Obiekt1Click;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Obiekt1Click(TObject *Sender)
{
    // cos tam
}



a w pliku nagłówkowym

        void __fastcall Obiekt1Click(TObject *Sender);

 

komentarz 16 sierpnia 2015 przez Bartek85 Mądrala (7,440 p.)
A Twój obiket Form1, który ustawiasz jako Parent w Obiket1, to nie jest przypadkiem, głównym oknem? który jest klastą typu TForm? lub dziedziczącym po nim?

Podobne pytania

0 głosów
1 odpowiedź 202 wizyt
0 głosów
0 odpowiedzi 169 wizyt
+2 głosów
5 odpowiedzi 3,527 wizyt

93,425 zapytań

142,421 odpowiedzi

322,646 komentarzy

62,785 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...