Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.01;
Скачать: CL | DM;

Вниз

Иконка в трее   Найти похожие ветки 

 
Andre ©   (2003-06-28 02:39) [0]

Всем еще раз привет.
У меня нет ни формы ни окна, но нужна иконка в трее. Так вот вопрос: чтобы ее туда повесить обязательно ли создавать виндовское окно, или как-то это можно обойти (на что тогда должен указывать THandle?). Спасибо.


 
Юрий Зотов ©   (2003-06-28 09:58) [1]

Повесить можно и без окна. Но толку с этого не будет ровно никакого. Потому что сообщения от иконки система посылает именно окну, и ТОЛЬКО окну. Нет окна - значит, нет и приемника сообщений, значит, и негде их обрабатывать. И будет эта красивая иконка висеть трее совершенно без всякой пользы.

Поэтому, как правило, трей-программа - это невидимое окно.


 
AlexR ©   (2003-06-28 22:09) [2]

Вообще-то можно применить один метод для изврещенцев:
в качестве THandle указываешь Handle любого окна в системе и ставишь ловушку, где определяешь: какому окну идет сооббщение и какое это сообщение. Если сообещние наше а окно то, которе мы указали, то обрабатываем сообщение.

Метод может представлять интерес только в том случае, если есть веские причины не создавать окно.


 
Andre ©   (2003-06-29 02:34) [3]

Спасибо, я тогда уж лучше создам окно.
И ещё ( может кто ответит): можно ли эту иконку привязать к диалоговому окну, загруженному из файла *.RES(созданное с помощью BRCC32)? Не очень хочется создавать компоненты в run-time. Спасибо.


 
Германн ©   (2003-06-29 03:27) [4]

2 Andre © (29.06.03 02:34)
Окно - не загружается ни из какого файла. Окно создается соответствующей функцией. Визуальное отображение данного окна может определяться ресурсом.


 
Юрий Зотов ©   (2003-06-29 10:27) [5]

> Andre © (29.06.03 02:34)

> Не очень хочется создавать компоненты в run-time.

А никаких компонентов и не надо, ресурсы тоже не нужны. Вызываете RegisterClassEx, CreateWindowEx и Shell_NotifyIcon, пишете цикл выборки сообщений и оконнную функцию. Все. Размер Exe будет около 16 Кб.


 
Andre ©   (2003-06-30 02:23) [6]

Так окно я создал, проблема в другом: у меня есть ещё диалоговое окно, созданное с помощью BRCC32. Так вот нельзя ли привязать иконку именно к этому окну?


 
Германн ©   (2003-06-30 04:19) [7]

2 Andre © (30.06.03 02:23)
>Так окно я создал, проблема в другом: у меня есть ещё >диалоговое окно, созданное с помощью BRCC32.

BRCC32 не создает окна никогда! Примите и проч.

Но у любого окна созданного в программе есть Handle. Вот его и указывайте при создании иконки в трее.


 
Poirot ©   (2003-06-30 19:13) [8]

Окно вы показали, так оно у вас есть... что вам мешает получить его HANDLE?


 
Andre ©   (2003-07-02 03:00) [9]

А может кто-нить скажет, как создать окно в стиле Windows XP, но т.е. чтобы там кнопки были красивые и т.пр., а то чего то всё какое то мрачное выходит.



Страницы: 1 вся ветка

Текущий архив: 2003.09.01;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.021 c
3-1309
malamba
2003-08-07 19:07
2003.09.01
О выборе базы


1-1369
Злодей
2003-08-17 00:32
2003.09.01
Активизировать окно


7-1681
Kikimora
2003-06-18 00:45
2003.09.01
настройка мыши и клавы


14-1563
VEG
2003-08-11 20:20
2003.09.01
Радиосеть


6-1538
Hff
2003-06-25 14:51
2003.09.01
Как разобрать входящую почту ?