2009-03-05 5 views
0

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

Редактировать: Я не должен минимизировать или изменять размер формы.

+0

панель задач? вы, возможно, имеете в виду в системном трее? –

+0

Я думаю, что его системный лоток !!! – Shoban

ответ

1

Соответствует ли стандартная кнопка минимизации требованиям?

1

в коде кнопки:

 FormBorderStyle = FormBorderStyle.None; 
     Width = 0; 
     Height = 0; 

, скажем ... Активированный форма события:

 FormBorderStyle = FormBorderStyle.Fixed3D; 
     Width = 800; 
     Height = 500; 

ли этот эффект быть для вас?

+0

Вы шутите, не так ли? –

+0

Вопрос заключается в следующем: сохранить форму на панели задач и скрыть форму, ваш ответ неверен, и код, который я дал, дает эффект (требуется изменение, чтобы не размер формы при загрузке и т. Д.) Так что действительно ... проголосовать за меня чтобы дать правильный ответ? Ты шутишь? –

+0

и да, я знаю, что изменение ширины и высоты там .. но я взял пунт в стиле границы, достаточно, чтобы игнорировать это требование ... следовательно, мой вопрос: «Будет ли этот эффект подходящим для вас?« Но спасибо за проголосовать, я люблю тебя –

6

У вас есть два варианта:

  1. Использование стандартного минимизируя поведение форм Windows. В обработчике нажатия кнопки установите для свойства Form.WindowState значение FormWindowState.Minimized или просто позвольте пользователю использовать стандартную кнопку минимизации. Это «скроет» форму, но оставит ее кнопку на панели задач, и пользователь может щелкнуть ее, чтобы вернуть форму.

EDIT: На основе вашего вопроса редактирования, вы должны использовать NotifyIcon.

  1. Закройте форму и добавьте значок уведомления в область уведомлений панели задач (она же «системный трей»). Для этого вам нужно добавить экземпляр компонента NotifyIcon в вашу форму. Затем, при нажатии на кнопку click, вы вызываете Form.Close, чтобы закрыть форму. Когда пользователь хочет вернуть форму обратно, они нажмут на значок значка syastem, представляющий ваше приложение, и вы откроете форму.

Это VB.NET example, как это сделать. Это не должно быть сложно перевести на C#. Вы также можете найти NotifyIcon, чтобы увидеть больше примеров.

1

As nils said.

Hide(); 
// or 
Visible = false; 

NotifyIcon trayIcon; 
//.... 
trayIcon.Visible = true; 

Показать/скрыть лоток в зависимости от видимости форм.

0

Используйте свойство формы «Непрозрачность».

// Hide your windows frame 
form1.Opacity = 0; 

/* 
* Your actions Here 
*/ 

// Show your windows frame 
form1.Opacity = 1.0; 
Смежные вопросы