Friday, February 16, 2007

V naší ukázce se nejprve po kliknutí na první tlačítko naplní menu položkami (budou to pro tentokrát názvy fontů písma nainstalovaných v systému) a po stisknutí druhého tlačítka dojde opět k jejich smazání. Když vyberete položku z menu, bude její název (jako ukázka jak přiřadit položce událost OnClick) zobrazena v textovém popisku – Labelu. Tak tedy na prázdný formulář umístěte dvě tlačítka, dále jeden Label a nakonec MainMenu; do něho přidejte jednu položku s názvem Fonts. Zbytek už je vidět ze zdrojového kódu:
procedure TForm1.Fonts1Click(Sender: TObject);
begin
if Sender <> Fonts1 then Label1.Caption := (Sender as TMenuItem).Caption;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
NewItem: TMenuItem;
i: Integer;
begin
for i := 0 to Screen.Fonts.Count -1 do
begin
NewItem := TMenuItem.Create(Self);
NewItem.Caption := Screen.Fonts.Strings[i];
NewItem.OnClick := Fonts1Click;
Fonts1.Add(NewItem);
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
i: Integer;
begin
for i:=1 to Fonts1.Count do Fonts1.Delete(0);
end;