![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TrayIcon
nOvell © (2004-08-15 13:30:00)Создаю PopupMenu и цепляю его к BapTrayIcon. Ставлю Creatin Order и все такое.. Все показывается и выскакивает, но вот обработчики событий PopupMenu (выбор элементов) не срабатывают. Раньше KOL 1.90 все работало. Что бы это могло быть?
TRUF (2004-08-15 20:20:00) [1]А нет это не в KOL, зря я на TKOLObj грешил. Это в мироре BatTrayIcon (у меня v1.05):
procedure TKOLBAPTrayIcon.SetupFirst;
begin
...
SL.Add(Prefix + AName + ' := NewBAPTrayIcon(Applet);');
...
Зачем?
Имхо надо SL.Add(Prefix + AName + ' := NewBAPTrayIcon(' + AParent + ');');
И все рулит. Правим mckBAPTrayIcon.pas.
TRUF (2004-08-15 19:38:00) [2]Глюк новой версии КОЛ. Цитирую:
[-]MCK: TKOLObj.CreationPriority property added, to provide
correct objects creation order (TKOLMenu objects must be created
before TKOLTrayIcon, which can use TKOLPopupMenu).
И в честь этого конструктор TrayIcon после применения нового едитора (а может и сразу после рибилда проекта) изменяется на
Result.BAPTrayIcon1 := NewBAPTrayIcon(Applet); (В uses1_1.inc)
Он сует Applet при вызове Popup окна, а тот не держит события.
Меняем все обратно на Result.BAPTrayIcon1 := NewBAPTrayIcon(Result.Form); и все работает! Надо найти баг в сорсах кол - вечерком поковыряю.