В отношении рекомендаций области уведомлений от Microsoft я ищу идеи или компонент Delphi для реализации "Отправки уведомлений" .
Первой "естественной" идеей является использование стандартной формы Delphi, но я столкнулся с двумя проблемами:
- Я не могу получить поведение границы формы, используя стандартное свойство "BorderStyle". Пытался "имитировать" границу, используя свойство GlassFrame вместе с BorderStyle, установленным в bsNone, но там нет GlassFrame, когда нет границы (по крайней мере, в Delphi 2007).
- Я не могу понять, как закрыть форму, когда пользователь щелкает всюду вне самой формы. Вчера я пытался с разными сообщениями, но никто не работает так, как ожидалось.
Я благодарю любую подсказку или компонент, чтобы это произошло:)
С уважением.
jachguate.
обновление [0] Я все еще ищу совет. @skamradt ответ выглядит очень хорошо, но, к сожалению, на практике это не работает.
обновление [1] Наконец, поведение auto-close работает с сообщением WM_ACTIVATE после вызова SetForegroundWindog, чтобы принудительно активировать "активацию"
begin
FlyoutForm.Show;
SetForegroundWindow(FlyoutForm.Handle);
end;
Теперь я хочу посоветовать достичь поведения границы и визуального стиля, потому что самое близкое поведение достигается со стилем WS_POPUP или WS_DLGFRAME, в то время как ближайшая визуальная цель достигается установкой стиля как WS_POPUP или WS_THICKFRAME.