2014-09-04 5 views
1

Как предотвратить исчезновение кнопки панели задач при скрытии единственной формы приложения?Как предотвратить исчезновение кнопки панели задач при скрытии формы

Мое приложение имеет один всегда на верхней форме, но иногда мне нужно скрыть его, но при этом держать кнопку панели задач видимой. Кнопка «Панель задач» используется для управления продуктом.

+1

'ShowWindow (Handle, SW_HIDE)' оставляет кнопку панели задач видимой. по крайней мере, в XP. но «кнопка« Панель задач »используется для управления продуктом»: что вы ожидаете, когда пользователь нажмет кнопку «Панель задач»? – kobik

+0

@kobik - Вероятно, это зависит от MainFormOnTaskBar. –

ответ

3

Кнопки панели задач не отображаются для скрытых окон. Итак, если кнопка панели задач связана с окном вашей основной формы, и вы скрываете эту форму, кнопка панели задач будет скрыта.

Итак, я думаю, что проще всего было бы скрыть основную форму. Используйте вместо этого Application.Minimize, или WindowState := wsMinimized.

3

Если вы хотите избежать эффектов минимизации/максимизации путем минимизации/максимизации формы, используйте прозрачность альфа и установите ее на 0 (полностью прозрачный).
Таким образом, вы скрываете окно от пользователей, но со стороны ОС окно все еще видно, поэтому оно будет поддерживать свою кнопку панели задач.

+1

Что происходит, когда вы нажимаете на это полностью прозрачное окно? –

+1

Насколько я знаю, форма с альфа-прозрачностью, установленная на 0, не регистрирует клики, но я не уверен в этом. Поскольку у меня нет доступа к моей машине разработки, я не могу проверить это сейчас. – SilverWarior

+0

Я проверил. Кажется, ты прав. –

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