S
sunly
Unregistered / Unconfirmed
GUEST, unregistred user!
问题如题目,我自己作了个托盘图标,点击可以弹出个菜单,用以下代码实现弹出:
procedure TCenterForm.WndProc(var Msg : TMessage);
var
p : TPoint;
begin
case Msg.Msg of
WM_USER + 1:
if (Msg.lParam=WM_RBUTTONDOWN) or (Msg.lParam=WM_LBUTTONDOWN) then
begin
GetCursorPos(p);
PopupMenu1.Popup(p.x, p.y);
end;
end;
inherited;
end;
问题是菜单弹出后只有点中菜单中的一项或者点击应用程序界面才能让菜单消失,而点击桌面则不能让其消失,顽固的贴在那里,而我发现其它程序的托盘菜单只要失去焦点就会自动消失,我的为什么不行呢,郁闷~~请高手指点迷津!
procedure TCenterForm.WndProc(var Msg : TMessage);
var
p : TPoint;
begin
case Msg.Msg of
WM_USER + 1:
if (Msg.lParam=WM_RBUTTONDOWN) or (Msg.lParam=WM_LBUTTONDOWN) then
begin
GetCursorPos(p);
PopupMenu1.Popup(p.x, p.y);
end;
end;
inherited;
end;
问题是菜单弹出后只有点中菜单中的一项或者点击应用程序界面才能让菜单消失,而点击桌面则不能让其消失,顽固的贴在那里,而我发现其它程序的托盘菜单只要失去焦点就会自动消失,我的为什么不行呢,郁闷~~请高手指点迷津!