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

Вниз

TrayIcon   Найти похожие ветки 

 
Adolf   (2003-01-19 14:10) [0]

Здравствуйте уважаемые программеры!
----------------------------------------------------------------
Прога сидит в автозапуске...допустим...
----------------------------------------------------------------
...То же, что когда запускаешь прогу, надо чтоб она сразу пряталась в Tray. Без всяких там миганий типа visible:=false или таймеров с интервалом 1...
Пробовал я SW_HIDE в form.activate, и form.create :)) но ошибка сама собой вылазит.
Как быть?


 
neodiX   (2003-01-19 14:21) [1]

a ты попробуй сразу форму не создавать. в начале делай свой трей, а потом, когда в трей поступит сообщение, создавай форму


 
Юрий Зотов   (2003-01-19 14:35) [2]

> neodiX © (19.01.03 14:21)

Sorry, а Вы не подскажете, что нужно прописать в поле Wnd, если ни одного окна еще нет? И куда будет поступать сообщение, о котором Вы говорите? И что такое "свой трей"? И какие такие сообщения в него поступают?

В общем, sorry once more, но что ни слово, то беда. Зачем такие ответы?


> Adolf

В обработчике OnCreate напишите:
Application.ShowMainForm := False
и там же сажайте в трей свою иконку. Вот и все. А здесь пример:
http://www.delphikingdom.com
(см. раздел "Hello, Woirld!", а в нем - примеры работы с WinAPI).



 
neodiX   (2003-01-19 14:48) [3]

2 Юрий Зотов :
program project2;
uses windows, shellapi;
{$R *.res}
var
Inst : Integer;
stray : NOTIFYICONDATA;
Msg : TMsg;
begin
Inst:=hInstance;
Stray.cbSize:=sizeof(NOTIFYICONDATA);
Stray.Wnd:=Inst;
Stray.uID:=7;
Stray.uFlags:=7;
Stray.uCallbackMessage:=$200;
Stray.hIcon:=LoadIcon(inst, "MAINICON");
Stray.szTip:="My prog";
Shell_NotifyIcon(0,@stray);
while (GetMessage(Msg, inst, 0, 0)) do
begin
TranslateMessage(msg);
DispatchMessage(msg);
end;
Shell_NotifyIcon(2,@stray);
end.

только я еще не разобрался как сделать что бы иконка в трее не исчезала при наводении мыщи


 
Юрий Зотов   (2003-01-19 15:10) [4]

Ну, что ж, комментировать не буду. Думаю, в процессе "разбирания, как сделать что бы иконка в трее не исчезала при наводении мыши" Вы сами поймете, что написали.

Кстати, предстоит разобраться еще и с тем, а как при шелчке по иконке хоть что-нибудь сделать. Тоже поспособствует пониманию.

Могу подсказать: хэндлы - они ведь разные бывают.


 
neodiX   (2003-01-19 15:21) [5]


> Могу подсказать: хэндлы - они ведь разные бывают.

Понял. Ну что ж спасибо за поправки, виндо мне еще долго учиться.


 
Adolf   (2003-01-19 22:26) [6]

> Юрий Зотов
Геньяльно!Чтоб я, чайник, делал без ЭТОГО форума?


 
Avenger [NhT]   (2003-01-20 02:19) [7]

Иконка исчезает потомучто нет обработчика сообщений, а хендл форму не обязателен, я делал в своем компоненте так:

constructor TAvlTrayIcon.Create;
begin
WM_TASKBARCREATED := RegisterWindowMessage("TaskbarCreated");
FHandle := AllocateHWnd(WndProcTray);
end;


вот тебе и хендл и проц-а обработки ошибок!


 
Юрий Зотов   (2003-01-20 06:05) [8]

> а хендл форму не обязателен

А знаете, у САМОЙ формы ведь и хэндла-то никакого нет. Хэндл есть у ее ОКНА. А хэндл окна - обязателен. Что Вы сами и подтвердили строкой FHandle := AllocateHWnd(WndProcTray).






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

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

Наверх





Память: 0.46 MB
Время: 0.008 c
3-16971
Jaxtor
2003-02-17 14:14
2003.03.06
Access Violation при изменении DataSource


14-17390
antdrnc
2003-02-18 18:16
2003.03.06
Kylix3 C++ и libqt ?


3-16953
glory32
2003-02-17 11:01
2003.03.06
Работа с ФохПрошной базой под Delphi


3-16913
фыва
2003-02-15 19:38
2003.03.06
фото и


1-17151
LeO U
2003-02-23 13:21
2003.03.06
Проблемы с DLL, Delphi 6 и Windows XP





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский