De vlag van eigenaar getekende instellen

U kunt geen een eigenaar getekende menu item in resource-definitie bestand van uw toepassing definiëren. In plaats daarvan moet u een nieuw menu-item maken of bestaande wijzigen met behulp van de MFT_OWNERDRAW menu vlag.

U kunt de InsertMenuItem of SetMenuItemInfo functie om een eigenaar getekende menu item te geven. Gebruik InsertMenuItem om een nieuw menu-item op de opgegeven positie in een menubalk of het menu invoegen. Gebruik SetMenuItemInfo om de inhoud van een menu wijzigen.

Bij het aanroepen van deze twee functies, moet u het adres van een MENUITEMINFO structuur, geven de eigenschappen van het nieuwe menu-item of de eigenschappen die u wilt wijzigen voor een bestaande menu-item. Om een item een eigenaar getekende item, de MIIM_TYPE waarde opgeven voor het lid van de fMask en de MFT_OWNERDRAW waarde voor de fType lid.

Door het instellen van de desbetreffende leden van de MENUITEMINFO structuur, kunt u een toepassing gedefinieerde waarde, die artikelgegevens heet, koppelen aan elk menu-item. Om dit te doen, de MIIM_DATA waarde opgeven voor het lid van de fMask en de toepassing gedefinieerde waarde voor de dwItemData lid.

U kunt artikelgegevens gebruiken met elk type van menu-item, maar het is met name nuttig voor eigenaar getekende objecten. Stel bijvoorbeeld dat een structuur bevat informatie gebruikt bij het tekenen van een menu-item. Een toepassing kan de artikelgegevens voor een menu-item gebruiken om op te slaan een aanwijzer naar de structuur. De gegevens van het item wordt verzonden naar de menu's eigenaar venster met de WM_MEASUREITEM en WM_DRAWITEM berichten. Gebruik de functie GetMenuItemInfo om het item gegevens ophalen voor een menu te allen tijde,.

Toepassingen die zijn geschreven voor eerdere versies van het systeem kunnen blijven roepen AppendMenu, InsertMenu, of ModifyMenu de vlag MF_OWNERDRAW aan een eigenaar getekende menu item toewijzen.

Wanneer u een van deze drie functies aanroept, kunt u een 32-bits waarde doorgeven als de parameter lpNewItem . Deze waarde kan vertegenwoordigen alle informatie die zinvol is voor uw toepassing is, en dat zal voor uw toepassing beschikbaar wanneer het item wordt weergegeven. De waarde kan bevatten bijvoorbeeld een aanwijzer naar een structuur; de structuur, kan op zijn beurt, bevatten een tekenreeks en de greep naar een logische lettertype dat uw toepassing gebruiken zal om te tekenen de tekenreeks.

Index