Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyświetlanie ikonek w menu kontekstowym
Konnekt | Forum > Developerzy > Tworzenie wtyczek
dulek000
Jak wyświetlić w WinApi ikonkę przy itemie menu kontekstowego? Myślałem, że struktura MENUITEMINFO udostępnia odpowiednie pole. Niestety, wszystkie bitmapowe pola służą do innych celów.
hao
Niestety trzeba ją narysować samemu. Możesz stworzyć za to własną grupę konnektowych akcji i wywołać je jako menu przy pomocy klomunikatu którego nazwy teraz nie pamiętam smile.gif Tam już chyba wiesz jak dodawać ikonki wink.gif
dulek000
Ten komunikat to IMI_ACTION_MAKEPOPUPMENU. Bardzo ciekawe rozwiązanie i chyba właśnie z niego skorzystam.
dulek000
Ok, zrobiłem. Dla potomnych zostawiam przykładowy kod:
CODE
IMessage(&sIMessage_UIMakePopup(sUIAction(IMIG_MAINTB, IMIG_MAINCNT, 0), 0, p.x, p.y, 0, hwnd));


Mam tylko jeden problem. Menu wyświetlam w oddzielnym okienku (kRSS), więc nie mogę ustawić hwnd na główne okno Konnekta, bo będzie przeskakiwał na nie focus przy każdym wywołaniu menu kontekstowego. Jednak gdy ustawię uchwyt na moje okienko to nie wyświetlają się ikonki (jak zresztą zostało w SDK wyjaśnione). Co mogę na to poradzić?
hao
W Twoim hwnd obsłuż komunikaty: WM_DRAWITEM, WM_MEASUREITEM, WM_ENTERIDLE i WM_INITMENUPOPUP i "prześlij" je w niezmienionej formie do głównego okna Konnekta, żeby jego procedura mogła je obsłużyć i narysować co trzeba...
dulek000
Śmiga - powinienem sam na to wpaść.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2012 Invision Power Services, Inc.