Главная страница
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.025 c
3-1105458423
Quiii
2005-01-11 18:47
2005.02.13
Po4emu Delphik rugaetsja?


4-1103788539
Fantom
2004-12-23 10:55
2005.02.13
Как выполнить LOGOFF на удаленном ПК ?


1-1106837943
Денис Шаров
2005-01-27 17:59
2005.02.13
Как поставить "Hook" на CDROM???


3-1105541526
SeregaMan
2005-01-12 17:52
2005.02.13
Совершенство при работе с базами данных!


14-1106686685
Гаврила
2005-01-25 23:58
2005.02.13
Компания "Эскорт" - кто что слышал