procedure TForm1.AddSubMenuItem;
var
MainMenuItem, SubMenuItem: TMenuItem;
begin
// Предположим, что у вас уже есть главное меню и пункт меню
MainMenuItem := File1; // Например, пункт меню "File1"
// Создаем новый пункт меню для подменю
SubMenuItem := TMenuItem.Create(Self);
SubMenuItem.Caption := 'New SubMenu Item'; // Название пункта подменю
SubMenuItem.OnClick := SubMenuItemClick; // Обработчик события клика
// Добавляем новый пункт меню к главному пункту меню
MainMenuItem.Add(SubMenuItem);
end;
procedure TForm1.SubMenuItemClick(Sender: TObject);
begin
// Обработчик события клика по пункту подменю
ShowMessage('SubMenu Item Clicked!');
end;
Вот что пишет deepseek uses
System.IOUtils;
procedure TForm1.MenuItemClick(Sender: TObject);
begin
Caption := 'Кассир: ' + (Sender as TMenuItem).Caption;
end;
procedure LoadMenuFromTextFile(APath: string; AMenuItem: TMenuItem; ANotifier: TNotifyEvent);
begin
for var i in TFile.ReadAllText(APath).Split([#13#10]) do
begin
var mi := TMenuItem.Create(AMenuItem);
mi.Caption := i;
mi.OnClick := ANotifier;
AMenuItem.Add(mi);
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
LoadMenuFromTextFile('file.txt', MenuItem, MenuItemClick);
end;
иерархия пишется добавлением одного MenuItem в другой
сделать так чтобы при нажатии "Кассир" открывалось меню состоящее из строк текстового файла?
Как в этом компоненте пишется иерархия?