![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
тишина |
![]() ![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 8 Пол: Мужской Репутация: ![]() ![]() ![]() |
помогите описать динамическое создание меню, кнопки, панели получаются, меню так же прописываю, а оно не отображается, вот кусок из процедуры FormCreat:
Код procedure TForm1.FormCreate(Sender: TObject); var i:integer; begin kol:=15; Caption:='Игра'; Color:=$00FC1B01; BorderStyle:=bsSingle; ClientWidth := CW*((kol div 4)+1); ClientHeight := CH*8; Menu:=MainMenu1; MainMenu1:=TMainMenu.Create(Form1); with MainMenu1 do begin Left:= 10; \\вот это вроде в свойствах меню нет, но надо же как-то Top:= 10; \\ задавать, где оно должно находиться :huh: Parent:=Form1; ParentBiDiMode:=True; Exit:=TMenuItem.Create(Form1.MainMenu1); with Exit do begin OnClick:=FormExit; Caption:='Выход'; end; Spravka:=TMenuItem.Create(Form1.MainMenu1.Items); with Spravka do begin Caption:='Справка'; About:=TMenuItem.Create(Spravka); with About do begin OnClick:=PrgAbout; Caption:='О программе'; end; Rules:=TMenuItem.Create(Spravka); with Rules do begin OnClick:=GameRules; Caption:='Правила'; end; end; end; Тегами для подсветки кода пользуйтесь |
![]() ![]() |
Digitalator |
![]()
Сообщение
#2
|
Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 247 Пол: Мужской Репутация: ![]() ![]() ![]() |
Цитата в том-то и дело! надо обходится без визуального редактора Это препод так сказал?? что за бред, делфи для того и делали чтоб быстро и удобно было....... Вот код рабочего модуля с динамически созданным меню, все должно быть понятно Код unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Menus; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure additem(owner:TMenuItem; caption:string); var item:TMenuItem; begin item := TMenuItem.Create(owner); item.Caption:=caption; owner.Add(item); end; procedure TForm1.FormCreate(Sender: TObject); begin Menu := TMainMenu.Create(Form1); additem(Menu.Items,'Menu item 1'); additem(Menu.Items,'Menu item 2'); additem(Menu.Items,'Menu item 3'); additem(Menu.Items[0],'Sub item 1-1'); additem(Menu.Items[0],'Sub item 1-2'); additem(Menu.Items[1],'Sub item 2-1'); additem(Menu.Items[2],'Sub item 3-1'); additem(Menu.Items[0].Items[0],'Sub Sub item 1'); additem(Menu.Items[0].Items[0],'Sub Sub item 2'); end; end. -------------------- |
![]() ![]() |
![]() |
Текстовая версия | 11.07.2025 23:44 |