![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| dark |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 26.9.2003 Репутация: нет Всего: нет |
Подскажите код, который бы при закрытие окна сворачивал бы его в системный трей.
|
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
|
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
там в конце допиши еще
AfxGetApp()->m_pMainWnd->ShowWindow(SW_HIDE); |
|||
|
||||
| dark |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 26.9.2003 Репутация: нет Всего: нет |
Я воспользовался твоим кодом NULL но иконки не вижу. В момент запуска появляется место для иконки и тут же пропадает. К тому же это код для VC а я пишу в BIlder. Может в этом причина?
|
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
dark, в этом причина наверно, у меня все работает. Код апишный вроде должно и в билдере и в делфи работать.
nid.hIcon=m_hIcon; у тя может в m_hIcon ниче нет. |
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
dark, или попробуй в конце не ставить ::DestroyIcon(nid.hIcon);
|
|||
|
||||
| dark |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 26.9.2003 Репутация: нет Всего: нет |
А как добавить в m_hIcon иконку. Разве не иконка формы должна высвечиваться?
|
|||
|
||||
| dark |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 26.9.2003 Репутация: нет Всего: нет |
Отсутствие ::DestroyIcon(nid.hIcon) не помогает.
|
|||
|
||||
| Ars |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 28.8.2003 Где: Московская обл. Репутация: 2 Всего: 2 |
Если OnClose отрабатывает для главного окна, то приложение после этого просто закрывается. Для того, чтобы выполнить сабж, нужно отлавливать WM_SYSCOMMAND с WParam==SC_CLOSE и в обработчике этого дела прятать окно Form->Visible=false; Ну и, конечно, создавать TrayIcon. В Builder'е есть соответствующий одноименный компонент, правда сыроватый, имхо -------------------- Есть многое на свете, друг Горацио, С чем очень долго можно прое..! |
|||
|
||||
| NULL |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 137 Регистрация: 22.8.2003 Репутация: нет Всего: нет |
Ars, нет не закроется //CDialog::OnClose(); покрайней мере в VC.
и если компонент есть, то мой код поидее вообще не нужен |
|||
|
||||
| dark |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 26.9.2003 Репутация: нет Всего: нет |
Ars иконка пропадает даже если этот код вставить в момент создания окна.
m_hIcon - должен указывать на файл иконки или здесь должно быть чтото другое. |
|||
|
||||
| Ars |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 28.8.2003 Где: Московская обл. Репутация: 2 Всего: 2 |
Дык в Билдере же dark ваяет
Посмотрел хелп про OnClose event и выяснилось, что и отлавливать то ничего не надо: в обработчик передается ссылка Action, изменяя значение которой, можно управлять исходом события OnClose, в т.ч. можно и спрятать окно без его закрытия. Там и надо вставлять код для TrayIcon Это сообщение отредактировал(а) Ars - 3.10.2003, 09:54 -------------------- Есть многое на свете, друг Горацио, С чем очень долго можно прое..! |
|||
|
||||
| RAN |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 709 Регистрация: 14.3.2003 Где: Щёлково Моск.обл. Репутация: 5 Всего: 6 |
Исчезает небось, при наведении на неё мышкой. Это из-за того, что сообщения из tray не обрабатываются.
dark, tray автоматически ничего не делает. Он только рисует твою иконку и посылает потом тебе сообщения о том, что мышь навели на неё, что кнопу нажали левую, правую и т.д. А ты должен эти сообщения обрабатывать. Иначе оболочка решит, что иконка ничейная, и что приложение, создавшее её, уже приказало долго жить. |
|||
|
||||
| dark |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 33 Регистрация: 26.9.2003 Репутация: нет Всего: нет |
А как это сделать? Какие события надо обработать. Код можно выложить?
|
|||
|
||||
| Ars |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 28.8.2003 Где: Московская обл. Репутация: 2 Всего: 2 |
RAN
Исчезает, когда создавшее приложение закрылось, не удалив TrayIcon -------------------- Есть многое на свете, друг Горацио, С чем очень долго можно прое..! |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |