Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.02.13;
Скачать: CL | DM;

Вниз

добавление submenu в item popupmenu   Найти похожие ветки 

 
tradakad   (2004-12-28 16:35) [0]

Приветствую!
имеется меню.
  hPopup:=CreatePopupMenu;
добавляю в него итем
 AppendMenu(hPopup,MF_STRING,9,"test");
теперь создаю второе popupmenu и добавляю в него итем.
 hPopup_test:=CreatePopupMenu;
 AppendMenu(hPopup_test,MF_STRING,9,"test_test");

для того чтобы по нажатию на test открывалось второе меню делаю так.

procedure Popup_Vis;
begin
SetForegroundWindow(Handle);
GetCursorPos(cur_pos);
TrackPopupMenu(hPopup_vis,0,cur_pos.X,cur_pos.y,5,Handle,nil);
PostMessage(Handle,WM_NULL,0,0);
end;

function WindowProc(hwnd, msg, wparam, lparam:longint):longint;stdcall;
begin
 Result:=DefWindowProc(hwnd,msg,wparam,lparam);
 case Msg of
   WM_COMMAND :
   begin
   if lparam=0 then
   begin
     case wparam of
        9: Popup_Vis;
     end;
   end;
 end;
end;
в приципе все работает за одним но. вернее  за тремя..
1) хотелось бы чтобы пункт test после надписи (справа) имел такую стрелочку что означает что в нем есть подменю. как это сделать?
2) хотелось бы чтобы второе popupmenu открывалось по наведению курсора на надпись test а не по клику (но здесь думаю стоит повнимательнее почитать о WM_COMMAND)...
3) самое важное... по клику на test - (когда появляется второе меню) основное меню пропадает а я хочу чтобы оно оставалось..
Спасибо!


 
grom   (2004-12-28 16:50) [1]

item.Add(submenu);


 
tradakad   (2004-12-28 17:18) [2]

grom ты извини конечно.. но где я итем то возьму? мне что menus подключать? это же winapi и максимумум что я имею - это хендл менюхи (как я понимаю)...


 
grom   (2004-12-28 18:11) [3]

winapi
hPopupx:=createmenu;
hPopup:=createmenu;
hPopup_test:=CreatePopupMenu;
insertmenu(hPopup,word(-1),mf_ByPosition,Wm_user+22,"testxx");
insertmenu(hPopup,word(-1),mf_ByPosition,Wm_user+21,"test");
AppendMenu(hPopup_test,mf_Popup,hPopup,"test_test");


 
grom   (2004-12-28 18:37) [4]

//hPopupx:=createmenu; не надо


 
tradakad   (2004-12-29 09:38) [5]

AppendMenu(hPopup_test,mf_Popup,hPopup,"test_test");

- вот за это спасибо! ) это у меня то и не получалось ))



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

Текущий архив: 2005.02.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
1-1106734580
SashkoSoft
2005-01-26 13:16
2005.02.13
ресурсы в dll-ке


14-1106744539
NeyroSpace
2005-01-26 16:02
2005.02.13
Что обозначает БЕЛЫЙ цветочек в ICQ?


4-1103660674
Shamansky
2004-12-21 23:24
2005.02.13
кодирование информации


3-1105455009
denis24
2005-01-11 17:50
2005.02.13
создание пустой временной таблицы со структурой основной таблицы


14-1106205656
PVOzerski
2005-01-20 10:20
2005.02.13
Хочу посоветоваться насчет приработка