2009-06-09 2 views
0

Как я могу использовать немодуальную панель уведомлений скольжения, такую ​​как Firefox, Beyond Compare и VMware Workstation 6.5, в клиентских приложениях Windows?Немодальные панели уведомлений?

Любой язык или рамки на данный момент прекрасны; мое текущее приложение находится в Delphi/C++ Builder, но я также заинтересован в сравнении фреймворков и прототипировании некоторых пользовательских интерфейсов.

Связанный вопрос: This question спрашивает про это в Java.

ответ

1

Beyond панель уведомлений Compare не скользит, она просто всплывает, поэтому я не могу вам помочь. Сама панель уведомлений - это только TPanel с TImage и TLabel для изображения/текста. Он находится в главном окне во время разработки, и он настроен на выравнивание снизу. Обычно он скрыт, и когда появляется сообщение для отображения, мы устанавливаем свойство Visible равным true.

Существуют различные способы скрыть уведомление, в зависимости от того, как вы хотите, чтобы он себя вел. В BC мы устанавливаем клавиатурные и мышиные крючки (SetWindowsHookEx с WH_KEYBOARD или WH_MOUSE) и спрячем их на событиях клавиш и кнопок мыши. В качестве альтернативы, как сказал Марк, вы можете скрыть его после задержки, добавить кнопку закрытия в сторону или просто посмотреть конкретные события в своем приложении и вручную скрыть их.

0

В Delphi я считаю, что вы можете изменить свойство в самом диалоге (измените тип окна в «Диалоге» и выберите стандартную оконную альтернативу). Извините, я не могу быть более конкретным, прошло около двух лет с тех пор, как я в последний раз работал над приложением Delphi.

+0

Создание немодального диалога очень просто; Вместо этого я заинтересован в простом создании панелей уведомлений, которые являются частью родительского окна. –

+0

Упс, извините. Не можете ли вы просто поставить строку состояния внизу и изменить свойство текста строки состояния? В качестве альтернативы, панель, высота которой изменяется на «открыть» ее, и после задержки изменилась до нуля? –

Смежные вопросы