Wytłumaczę to bardzo dokładnie, gdyż Twoje pytanie jest nieprecyzyjne.
By jednak lepiej zrozumieć mechanizm
przeczytaj w serwisie Cyfrowy
Baron w dziale
teoria, artykuł:
rzutowanie typów, przypisanie polimorficzne.
Przykład wykorzystujący polimorfizm:
Tworzysz kilka elementów w MainMenu lub PopupMenu, dla przykładu będą to: Element_1, Element_2, Element_3, są to nazwy obiektów TMenuItem, a wartości Caption niech będą tak przypisane:
Element_1 = Otwórz
Element_2 = Zapisz
Element_3 = Zamknij
Nazwy elementów i wartość Caption są nieistotne, to tylko przykład.
Tworzysz zdarzenie OnClick dla TMenuItem o nazwie: Element_1:
- Kod: Zaznacz cały
//---------------------------------------------------------------------------
void __fastcall TForm1::Element_1Click(TObject *Sender)
{
String nazwa = dynamic_cast<TMenuItem* >(Sender)->Name;
String etykieta = dynamic_cast<TMenuItem*>(Sender)->Caption;
ShowMessage("Element: " + nazwa + " ma etykietÄ™: " + etykieta);
}
//---------------------------------------------------------------------------
Następnie w Object Inspector na zakłądce Events dla TMenuItems o nazwie Element_2 dla zdarzenia OnClick wybierasz Element_1Click i tak samo dla Element_2:
menuitem.png
i to wszystko, sprawdź jak to teraz działa.
Nie masz wystarczających uprawnień, aby zobaczyć pliki załączone do tego postu.