Вниз
Скачать: CL | DM;

Обновление меню   Найти похожие ветки 

 
anod ©   (2004-04-06 23:37) [0]

Здраствуйте!
Пишу plugin для winamp: список песен playlist"a в меню.

Добавляю пункт в меню винампа, Обрабатываю событие WM_MENUSELECT,
if (LOWORD(WParam) = 19)and(LParam = hWAMenu) then begin
 CreateItems();
end;

по которому создаю динамически массив подменменю.
При наведении мышкой на одино подменю (тоже через WM_MENUSELECT) открывается ещё меню со списком песен.
Как-то запутвнно получилось...

WinAmp Menu(Songs) -> Items from 1 to 31 -> 1. ....

Обнавляю меню так:
procedure CreateItems();
var i,res,n:integer; tmp:string;
begin
 for i:= GetMenuItemCount(hPopUpMenu)-1 downto 0 do DeleteMenu(hPopUpMenu,i,MF_BYPOSITION);
 res:=SendMessage(plugin.hwndParent, WM_USER, 0, 124);
...
 SetLength(hItemsMenu,n+1);
 for i:= 0 to n-1 do begin
   hItemsMenu[i]:=CreateMenu();
   tmp:= "Items from "+IntToStr(i*30+1)+" to "+IntToStr(i*30+30);
   AppendMenu(hPopUpMenu,MF_STRING or MF_POPUP,hItemsMenu[i], PCHAR(tmp));
 end;
end;


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

Спсибо.


 
anod ©   (2004-04-06 23:38) [1]

Сколько ошибок :(


 
anod ©   (2004-04-07 15:23) [2]

Люди, помогите избавиться от этого глюка:

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



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
14-1083583183
ИМХО
2004-05-03 15:19
2004.05.23
Лоуренс Аравийский


7-1081923947
Anka
2004-04-14 10:25
2004.05.23
Смена раскладки клавиатуры


6-1080729152
Delphin
2004-03-31 14:32
2004.05.23
Hi ALL!! Есть следующий вопрос: отправляю смстаким образом: IF no


1-1084021864
vk220
2004-05-08 17:11
2004.05.23
Как отключить отладку стандартных модулей


14-1082719463
VictorT
2004-04-23 15:24
2004.05.23
Ещё задачка к пятнице... мы пока к решению не пришли...




   Наверх