Урок 6 - Меню - как много в этом словеDelphi , Технологии , KOL и MCKУрок 6 - Меню - как много в этом слове
Ведущий раздела KOL и MCK: Анатолий aka XVeL Полную версию библиотеки KOL и MCK можно скачать здесь. Почти в любой программе есть меню. И у нас оно тоже будет. function NewMenu( AParent: PControl; FirstCmd: Integer; const Template: array of PChar; aOnMenuItem: TOnMenuItem ): PMenu; В AParent вы указываете к чему будет принадлежать меню. Если вы указали форму, то для нее это будет главное меню. Template - это массив, состоящий из пунктов меню. В этих пунктах могут встречаться специальные символы. Вот их список:
Описание некоторых свойств меню
Давайте добавим в наш редактор пару пунктов меню: program Primer; uses Windows, messages, KOL; {$R *.RES} var Form, PanTools, REdit, butOpen, butSave : PControl; mainMenu : pMenu; Dialog : pOpenSaveDialog; procedure clikButOpenSave( Dummy : Pointer; Sender : PControl ); var title : string; begin if sender = butOpen then begin Dialog.title := 'Открыть'; Dialog.OpenDialog := TRUE; REdit.Clear; end else begin Dialog.title := 'Сохранить как...'; Dialog.OpenDialog := FALSE; end; if Dialog.Execute then if sender = butOpen then REdit.RE_LoadFromFile(Dialog.Filename, reText, false) else REdit.RE_SaveToFile(Dialog.Filename, reText, false); form.StatusText[0] := PChar(Dialog.Filename); end; procedure ProcessingMenu ( Dummy : Pointer; Sender : pMenu; Item : Integer ); //обработка пунктов меню begin case Item of 1: begin {NEW} REdit.Clear; form.StatusText[0] := ''; end; 2: clikButOpenSave(nil, butOpen); {Open} 3: clikButOpenSave(nil, butSave); {Save As} 4: Applet.Close; {Exit} end;{case} end; begin form := NewForm( Applet, 'Редактор' ); panTools := NewPanel( Form, esRaised ).SetAlign( caTop ); panTools.Height := 35 ; REdit := NewRichEdit( Form, [] ).SetAlign(caClient); butOpen := NewButton( panTools, 'Open' ).SetSize(50, 25); butSave := NewButton( panTools, 'Save as' ).SetSize(60, 25).PlaceRight; Dialog := NewOpenSaveDialog( '', '', [] ); mainMenu := NewMenu(Form, 0, [ 'File', '(', 'New', 'Open', 'Save As..', '-', '&Exit', ')' ], TOnMenuItem( MakeMethod( nil, @ProcessingMenu )) ); butOpen.OnClick := TOnEvent( MakeMethod( nil, @clikButOpenSave )); butSave.OnClick := TOnEvent( MakeMethod( nil, @clikButOpenSave )); Run( Form ); end.
В этой статье описывается создание меню в программе на языке Delphi с использованием библиотеки KOL и MCK. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||||||||||||||||||||||||||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |