Owner Draw i menu systemowe?

Odpowiedz Nowy wątek
2004-10-05 21:58
0

Jak można pomalować po menu systemowym? Próbowałem ustawiać w menuiteminfo owner draw, ale za nic nie mogę przechwycić komunikatów WM_MEASUREITEM i WM_DRAWITEM. Pewnie dostaje je pętla komunikatów programu, która siedzi w vcl'u, ale nie mam siły już w tym grzebać. Próbowałem też zmienić w TPopupMenu właściwość Handle z read-only na normalną i potem przypisać jej uchwyt menu systemowego. I to właściwie działa, ale jak tylko ustawię ownerdraw na true w tym TPopupMenu, menu zwęża się do jakichś 10 pixeli...

Więc, czy ktoś wie, jak normalnie rysować po systemowym menu? Będę wdzięczny za odpowiedź.

P.S. na googlach oczywiście szukałem, ale żadnych konkretów nie znalazłem.

Pozostało 580 znaków

2004-10-06 20:09
0

Może więc inaczej... Czy ktokolwiek wie, jak obsłużyć owner draw w jakimkolwiek menu, ale za pomocą winapi? Wyłapuję komunikaty przychodzące do aplikacji, niestety za nic w świecie nie przychodzi WM_MEASUREITEM i WM_DRAWITEM. Proszę o link do jakiegoś przykładu, bo siedzę nad tym już drugi dzień i nie mogę znaleźć nic konkretnego, a to dla mnie ważne.

P.S. wybaczcie nowy post, ale inaczej tematu nikt by już nie zobaczył.

Pozostało 580 znaków

2004-10-07 12:48
0

TPopupMenu, menu zwęża się do jakichś 10 pixeli...

A jak ustawiasz ownerDraw listBoxa na true, to zwiększa Ci się odległość między poswzczególnymi wierszami, nie?

Więc powiększ to po prostu. Musi być jakieś zdarzenie w którym to robisz.

Pozostało 580 znaków

2004-10-07 17:15
0

A jak ustawiasz ownerDraw listBoxa na true, to zwiększa Ci się odległość między poswzczególnymi wierszami, nie?

Więc powiększ to po prostu. Musi być jakieś zdarzenie w którym to robisz.

Nie o to chodzi. W onmeasureitem ustawiam szerokość i wysokość. Zdarzenie jest to samo dla menu systemowego i drugiego popupmenu. I dla tego drugiego działa, natomiast systemowe się zwęża, zostaje sama ramka.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0