6 / 6 / 1
Регистрация: 29.09.2009
Сообщений: 91
|
|
1 | |
TrayIcon14.10.2009, 22:30. Показов 13265. Ответов 8
Метки нет (Все метки)
Имеется программа которая по нажатию на кнопку скрытие или закрытие появляется в системном трее,
использую компонент TrayIcon реализую так по нажатию на обычную кнопку TrayIcon -> Visible = true; появляется. а мне нужно по нажатию на значок закрытие или скрытие формы в правом верхнем углу формы.....
0
|
14.10.2009, 22:30 | |
Ответы с готовыми решениями:
8
TrayIcon TrayIcon Работа с TrayIcon PopUpMenu в TrayIcon |
2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
|
||||||
14.10.2009, 22:35 | 2 | |||||
напиши в событии OnCloseQuery:
1
|
6 / 6 / 1
Регистрация: 29.09.2009
Сообщений: 91
|
|
14.10.2009, 22:47 [ТС] | 3 |
0
|
2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
|
|
14.10.2009, 22:50 | 4 |
Сообщение было отмечено как решение
Решение
Это переменная, передваемая в метод, которая отвечает за возможность закрытия формы. Вообщем, OnCloseQuery выполняется тогда, когда посылается сообщение закрытия окна (аналогично OnClose и является посути нажатием на крестик), но в отличии от OnClose, можно управлять - стоит закрывать окно, или нет. В данном случае, мы присваеваем CanClose = false, что значит, что окно закрывать не надо, и выполняем код: добавлячем иконку в трей и прячем окно.
3
|
6 / 6 / 1
Регистрация: 29.09.2009
Сообщений: 91
|
|
14.10.2009, 22:58 [ТС] | 5 |
1
|
Маэстро
1244 / 365 / 40
Регистрация: 06.09.2009
Сообщений: 798
|
||||||
16.10.2009, 13:31 | 6 | |||||
А у меня вот какой вопрос. TrayIcon - выставлены следующие свойства:
1. Visible - true // Показываем значок в трее 2. RestoreOn - imLeftClickUp // Восстанавливаем окно по одинарному щелчку л.к.м. События: 1. OnClick
Пока получается так. Жму кнопочку минимизации, программа прячется в трей(всё правильно). Щёлкаю иконку в трее, программа появляется(всё правильно). Жму иконку в трее, окно программы исчезает, но остаётся кнопка на панели задач... Как сделать, чтобы по щелчку на иконку программа так же скрывалась в трей, как если бы по кнопке минимизации. Пробовал различные выкрутасы с обработчиком OnRestrore и OnMinimize, но получается либо так же, либо совсем не так...
0
|
2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
|
|||||||||||
17.10.2009, 01:14 | 7 | ||||||||||
Maestrino,
1. Вместо флага, попробуй сделать так (зачем нужна переменная, если она есть в классе ):
1
|
Маэстро
1244 / 365 / 40
Регистрация: 06.09.2009
Сообщений: 798
|
||||||
17.10.2009, 11:31 | 8 | |||||
Попробовал. Но так ругается на то что невозможно вызвать функцию.
0
|
2816 / 1407 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
|
||||||
17.10.2009, 12:34 | 9 | |||||
используй вместо Form1->Hide() и Form1->Show() соответственно:
ну естевственно, это действие поумолчанию. ты должен отлавливать событие сворачивания окна, прятать окно с панели задач (функцию я приводил выше) и добавлять иконку в трей.
1
|
17.10.2009, 12:34 | |
17.10.2009, 12:34 | |
Помогаю со студенческими работами здесь
9
TrayIcon и ImageList BallonTimeout в TrayIcon TrayIcon с Child окном Отсутствует TrayIcon (C++Builder XE) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |