CodeNet / Языки программирования / Delphi & Kylix / FAQ - Часто задаваемые вопросы / Пишем инсталятор.
FAQ - Каким образом можно изменить системное меню формы?
© Зайцев Олег
http://z-ol.chat.ru/
http://z-ol.chat.ru/
Hе знаю как насчет акселераторов, надо поискать, а вот добавить ITEM - пожалуйста.
TYPE TMYFORM=CLASS(TFORM) PROCEDURE WMSYSCOMMAND(VAR MESSAGE:TMESSAGE); MESSAGE WM_SYSCOMMAND; END; CONST ID_ABOUT = WM_USER+1; ID_CALENDAR=WM_USER+2; ID_EDIT = WM_USER+3; ID_ANALIS = WM_USER+4; IMPLEMENTATION PROCEDURE TMYFORM.WMSYSCOMMAND; BEGIN CASE MESSAGE.WPARAM OF ID_CALENDAR:DATBITBTNCLICK(SELF) ; ID_EDIT :EDITBITBTNCLICK(SELF); ID_ANALIS:ANALISBUTTONCLICK(SELF); END; INHERITED; END; PROCEDURE TMYFORM.FORMCREATE(SENDER: TOBJECT); VAR SYSMENU:THANDLE; BEGIN SYSMENU:=GETSYSTEMMENU(HANDLE,FALSE); INSERTMENU(SYSMENU,WORD(-1),MF_SEPARATOR,ID_ABOUT,''); INSERTMENU(SYSMENU,WORD(-1),MF_BYPOSITION,ID_CALENDAR, 'CALENDAR'); INSERTMENU(SYSMENU,WORD(-1),MF_BYPOSITION,ID_ANALIS, 'ANALIS'); INSERTMENU(SYSMENU,WORD(-1),MF_BYPOSITION,ID_EDIT, 'EDIT'); END;