Главная страница
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.015 c
14-1605
Дмитрий Терёхин
2003-08-13 18:41
2003.09.01
вопрос + работа


14-1576
Andryk
2003-08-11 17:11
2003.09.01
Я плакалъ :о)))))))))


14-1562
RIMMER
2003-08-11 23:31
2003.09.01
Как запретить XP theme UI для моей программы


3-1334
jack128
2003-08-07 13:35
2003.09.01
Отчет с двумя Summary bands


3-1315
kostik78ua
2003-08-08 16:08
2003.09.01
Обрезание поля