我试图显示弹出菜单时,右键单击我的通知图标,工作正常; 但我想,当用户点击该菜单以外的消失菜单。
这是据称被设计为每KB135788 - PRB:菜单的通知图标无法正常工作 ( 存档 )。
但是,没有像样的程序,我知道的行为就像这样。 我已经打过电话SetForegroundWindow使用弹出式菜单的句柄无济于事。 我敢肯定,这可以解决这个问题,因为我已经是几年前完成,但不记得如何。
任何人都知道如何实现预期的行为?
我试图显示弹出菜单时,右键单击我的通知图标,工作正常; 但我想,当用户点击该菜单以外的消失菜单。
这是据称被设计为每KB135788 - PRB:菜单的通知图标无法正常工作 ( 存档 )。
但是,没有像样的程序,我知道的行为就像这样。 我已经打过电话SetForegroundWindow使用弹出式菜单的句柄无济于事。 我敢肯定,这可以解决这个问题,因为我已经是几年前完成,但不记得如何。
任何人都知道如何实现预期的行为?
我已经找到了解决办法!
我打电话SetForegroundWindow(PopupMenu1.Handle);
这是不行的,但在OnPopup事件处理程序改变这
procedure TForm1.PopupMenu1Popup(Sender: TObject);
begin
// Hack to fix the "by design" behaviour of popups from notification area icons.
// See: http://support.microsoft.com/kb/135788
BringToFront();
end;
作品!
显然,如果在这个被称为形式是可见的,你的应用程序将最重要的跳跃,但如果它是隐藏的(如我的是),那么它会工作。
我很想知道,如果有一种方法,使菜单操作权没有窗户跳最重要的,虽然。