Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.09.01;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "WinAPI";
Текущий архив: 2003.09.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.011 c
14-1657
AZ
2003-08-12 03:43
2003.09.01
Net BreAkeR у - Публичную экзекуцию!


1-1493
n-m-a
2003-08-18 09:37
2003.09.01
Я извеняюсь за свой может глупый вопрос, но можно ли узнать


1-1397
SergP
2003-08-15 21:12
2003.09.01
Как можно запретить вызов even ta пока не отработал другой event


3-1317
Ренат
2003-08-08 11:11
2003.09.01
Ошибки при выполнении команды SQL


1-1469
Влад Штогрин
2003-08-18 14:22
2003.09.01
Определение в системе динамического отладчика





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский