![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Программа без формы [D6, Win2k, WinXP]
^^^Dragon^^^ © (2003-08-12 12:49:00)
Здравствуйте, уважаемые Мастера.
Как можно поместить иконку в трэй, сохздать всплывающее меню и пункты в нем не создавая формы? Спасибо.
KSergey (2003-08-17 11:36:00) [1]
Удалено модератором
Примечание: Offtopic
Viktorious (2003-08-16 17:25:00) [2]
Меню можно создавать через функции WinAPI CreatePopupMenu,InsertMenuItem,InsertMenu. Там никаких форм и окон не надо. Для того чтобы показать сформированное меню - TrackPopupMenuEx. А вот чтобы обработывать клики по меню - надо в приложении прописать обработчики событий меню. Это уже техника программирования без VCL (раз пишешь без форм, то нафиг тебе VCL?)
^^^Dragon^^^ (2003-08-15 17:42:00) [3]
Нееее, не то. Формы НЕТ!!! Нет сьроки
Application.CreateForm(TForm1, Form1);. А книжку скачал, дельная, нечего сказать сижу, вот просвещаюсь. Если что - напишу, или выложу исходники.
BillyJeans (2003-08-15 14:00:00) [4]
TrayPopUpMenu := TPopUpMenu.Create(nil);
....
procedure TMainForm.WMICON(var msg: TMessage);
var P : TPoint;
begin
if msg.LParam = WM_LBUTTONUP then begin
GetCursorPos(p); PopupMenu1.Popup(P.X, P.Y);
end;
end;
SH (2003-08-13 18:48:00) [5]
Во, специально сбегал посмотрел в свои проекты.
Чтобы показать PopupMenu, найди на вкладке Standart соответствующий компонент и нарисуй необходимую менюшку. Это ещё не всё. Чтоб заюзать трэй и не мучаться с WinAPI, используй библиотеку RxLib ( http://www.rxlib.ru). Она входит в стандартную поставку Delphi6. В этой библиотеке есть компонент RxTreeIcon, поставььте его на форму, в свойство PopupMenu подсуньте созданную менюшку, кажется это будет PopupMenu1, заюзайте нужные вам события для иконки в трее и наслаждайтесь! Чуть не забыл: там ещё иконку для Item-ов меню выставить можно, тоже в свойствах надо из файла подзагрузить. Я для этого использовал стандартный компонент ImageList. Если всё же Вам хочется на WinAPI, то попробуйте глянуть исходники RxTreeIcon. Я вот сам хочу всё это на WinAPI переписать, но пока не получается, у кого получилось - свистните !
dabadabiabo (2003-08-12 17:50:00) [6]
Игорь Шевченко дело говорит!
Я по этой книге такое приложение написал,
работает на все 100%
Том 2 - PDF вариант:
http://delphiplus.nagano.ru/downloads/doc/delphi5/d5_dev_guide2.zip
вес 5Mb
Шёл мимо (2003-08-12 16:52:00) [7]
Сделано, конечно же, в форме, но форма нигде не отображается (в том числе и на таскбаре). Все операции только с TrayIcon
^^^Dragon^^^ (2003-08-12 16:15:00) [8]
2Шёл мимо
Не то, по крайней мере там все в форме сделано. Компилится не хочет (пишет не библиотеки Trayform), а так штука занятная.
Игорь Шевченко (2003-08-12 14:13:00) [9]
Читать до посинения Тейксейру и Пачеко. Там очень хорошо про создание таких программ написано.
Шёл мимо (2003-08-12 14:09:00) [10]
Удалено модератором
Примечание: Личная переписка
SH (2003-08-12 14:01:00) [11]
Как прибить форму я и сам не знаю: на чистом WinAPI надо юзать. Кто знает подкиньте плисс код. Но менюшку показать я могу. Сейчас под рукой Дельфей нету, позже вышлю.
^^^Dragon^^^ (2003-08-12 13:32:00) [12]
Это не главное. Это я умею. А вот как кодом создать Popupmenu и с вызывать его по щелчку на иконке??
Игорь Шевченко (2003-08-12 13:12:00) [13]
Иконку в трей вставляют функцией Shell_NotifyIcon (c) А. Тенцер