Potřeboval bych upravit komponentu TMainMenu tak, aby se do její položek (Items) přidala nová vlastnost typu String. Ale nevím, jak to mám udělat. Poradíte?
Fórum › Delphi
Přidání vlastnosti do TMenuItems
fuha bohuzial vobec nerozumiem co to vlastne chces:)
myslis ako novu polozku na ktoru sa nebude dat klikat?
To sir_arthur : Potřebuju ke každé položce hlavního menu přiřadit proměnnou, která bude uchovávat cestu k souboru, který se spustí při události OnClick. Ty položky se generují z textového souboru až za běhu aplikace. Reakce na událost OnClick položky by mohla vypadat asi takto:
procedure TForm1.ItemOnClick(Sender: TObject);
begin
ShellExecute(Handle,'open',PChar((Sender as TMenuItem).MojePromenna),nil,nil,SW_Show);
end;
Takže potřebuji upravit TMenuItem (vytvořit novou komponentu, jenže TMenuItem není komponenta, ale je součástí komponenty TMainMenu) tak, aby obsahovala o vlastnost (property) víc. Další možností by mohlo být vytvářet proměnné typu String (později record, kvůli dalším proměnným), které by ve svém názvu obsahovaly číslo. To číslo bych uložil do vlastnosti tag v Itemu hlavního menu a pomocí něj odkazoval na tu String proměnnou. Jenže nevím jak proměnné typu String za běhu programu vytvářet (jako u objektů: MujObject := TObject.Create(Form1)...) a jak k nim pak přistupovat. Napadá mě, že by se možná dal tag přetypovat na ukazatel, kterým bych na tu String proměnnou (později na record, kvůli daším proměnným) ukazoval.
To Radim92 : A co mít v Form1 pole stringů, do kterého bude ukazovat tag z TMenuItem?
procedure TForm1.ItemOnClick(Sender: TObject);
begin
ShellExecute(Handle,'open',PChar(PoleStringu[(Sender as TMenuItem).Tag]),nil,nil,SW_Show);
end;
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 7 hostů
Podobná vlákna
Přidání atributu vlastnosti bázové třídy — založil Miloš
Vlastnosti okna — založil Jiří Hlaváček
Funkce ( vlastnosti) — založil Krasotina
Uložení vlastností — založil Jiří Zdvomka
Vlastnosti pc na sítě — založil Paja2