![]() |
|
Модераторы: gambit, Partizan |
![]()
|
|
| mel |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 30.7.2006 Репутация: нет Всего: нет |
Как спрятать приложение в трей ?
|
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
Добавляем на форму компонент NotifyIcon, обязательно выбираем какую-нибудь иконку, вешаем обработчики на Form1.SizeChanged и на notifyIcon1.DoubleClick:
Теперь если форму минимизировать, она исчезнет из таскбара и появится в трее. Если кликнуть дважды по иконке в трее - форма восстановится, а из трея иконка пропадёт. Всё это можно, конечно, настроить как угодно - была бы фантазия. -------------------- ![]() |
|||
|
||||
| mel |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 36 Регистрация: 30.7.2006 Репутация: нет Всего: нет |
Спосибо!
И еще такой вопрос почемуты визде ставишь оператор this, если работает и без него ? Это сообщение отредактировал(а) mel - 27.8.2006, 21:13 |
|||
|
||||
| marcusmae |
|
|||
![]() stravaganza ![]() ![]() Профиль Группа: Участник Сообщений: 874 Регистрация: 26.3.2006 Репутация: 3 Всего: 39 |
по-моему, в большинстве ситуаций легче поставить Qualifier (this, base, имя сборки, класса), чем потом искать ошибки, вызванные его отсутствием. Это сообщение отредактировал(а) marcusmae - 27.8.2006, 23:45 -------------------- ἀπὸ μηχανῆς θεός |
|||
|
||||
| mr.DUDA |
|
||||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
Это дело привычки, код становится более читаемым, и к тому же с IntelliSense проще работать - после this показывает только методы и свойства класса, а не всё что доступно.
и поэтому тоже... -------------------- ![]() |
||||
|
|||||
| Mal Hack |
|
|||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Сорри что поднимаю тему, но не хочу новую создавать.
Чем visible = (true|false) лучше Hide() или Show() ? |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
По идее одно и то же. В реальности, нет гарантии что одно и то же
-------------------- ![]() |
|||
|
||||
| reloni |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 10.5.2006 Где: Москва Репутация: 1 Всего: 4 |
Судя по тому, что написано в MSDN - это одно и то же.
|
|||
|
||||
| Mal Hack |
|
||||
![]() Мудрый... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Вот ради интереса попробовал...
При Hide все нормально, а при Show, который на клике NotifyIcon:
При Visible все работает на ура. |
||||
|
|||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
если
заменить на
то и Show будет работать на ура -------------------- ![]() |
|||
|
||||
| ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 11 Всего: 149 |
Взяв в руки reflector выяснил:
P.S. Это методы класса Control, предка класса Form |
|||
|
||||
| kobra |
|
||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 730 Регистрация: 15.6.2005 Где: Грузия, Тбилиси Репутация: 1 Всего: 9 |
такои вот вопрос
когда пишу
тотже ефект имеет
а вот когда пишу
как нужно делать чтобы избавится от этих неудобств? |
||||||
|
|||||||
| reloni |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 112 Регистрация: 10.5.2006 Где: Москва Репутация: 1 Всего: 4 |
kobra, прятать форму в конструкторе:
Т.к. при запуске программы событие Form1_SizeChanged не происходит и поэтому форма остается видна. Или как вариант после минимизации в конструкторе самостоятельно вызывать событие SizeChanged, но это изврат на мой взгляд ps Оказывается событие происходит, но форма почему-то все равно видна в трее. Видимо нужно сворачивать по событию Shown. А мигает она видимо всегда педед тем, как скрыться Это сообщение отредактировал(а) reloni - 7.1.2007, 01:14 |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 24 Всего: 232 |
Перекрыть у формы SetVisibleCore и не вызывать базовый метод - тогда форма не сможет стать видимой. Чтобы сделать видимой, ставим какой-нить флаг, который проверяем в SetVisibleCore и по которому базовый метод вызывается, затем делаем Visible = true, всё.
-------------------- ![]() |
|||
|
||||
| kobra |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 730 Регистрация: 15.6.2005 Где: Грузия, Тбилиси Репутация: 1 Всего: 9 |
mr.DUDA я попробовал, но без резултатно. а может чтото и не совсем так делаю.
может подкинеш рабочи вариант? |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Разработка Windows Forms | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |