Вверх ↑
Ответов: 184
Рейтинг: 4
#1: 2008-01-27 09:07:18 ЛС | профиль | цитата
Своё меню по ЛКМ по кнопке программы на таскбаре (свернуть, развернуть и т.д.)

#sha
Add(MainForm,12518453,315,161)
{
Left=80
Top=60
Width=401
Height=296
}
Add(InlineCode,1876531,70,168)
{
EventPoints=#6:onMenu|
Code=#15:unit HiAsmUnit;|0:|9:interface|0:|42:uses Windows, Messages, KOL, Share, Debug;|0:|4:type|29: THiAsmClass = class(TDebug)|9: private|20: Old: TOnMessage;|63: function _OnMes(var Msg: TMsg; var Rslt: integer): Boolean;|8: public|22: onMenu: THi_Event;|36: constructor Create; reintroduce;|33: destructor Destroy; override;|4:end;|0:|14:implementation|0:|5:const|26: WM_TASKBAR_MENU = $0313;|30: WM_POPUP_MENU = WM_USER + 1;|3: |31:constructor THiAsmClass.Create;|5:begin|12: inherited;|26: old := Applet.OnMessage;|29: Applet.OnMessage := _OnMes;|4:end;|0:|31:destructor THiAsmClass.Destroy;|5:begin|26: if Assigned(Applet) then|28: Applet.OnMessage := old;|12: inherited;|4:end;|3: |28:function THiAsmClass._OnMes;|5:begin|17: Result := true;|21: case Msg.message of|69: WM_TASKBAR_MENU: PostMessage(Applet.Handle, WM_POPUP_MENU, 0, 0);|39: WM_POPUP_MENU: _hi_OnEvent(onMenu);|8: else|27: if Assigned(Old) then|32: Result := Old(Msg, Rslt)|10: else|24: Result := false;|6: end;|4:end;|0:|4:end.|
link(onMenu,8114576:doPopupHere,[])
}
Add(PopupMenu,8114576,175,161)
{
Menu=#9:Развенуть|8:Свернуть|1:-|5:Выход|
link(onClick,8355157:doEvent,[])
}
Add(IndexToChanel,8355157,231,161)
{
Count=4
link(onEvent1,12518453:doRestore,[(292,167)(292,174)])
link(onEvent2,12518453:doMinimize,[(279,174)(279,181)])
link(onEvent4,12518453:doClose,[])
}
карма: 1
Статус строка какая-то, сейчас посмотрім: %time%
1
Голосовали:Астрамак