CMenu::AppendMenu
Dołącza nowy element na końcu menu.
BOOL AppendMenu(
UINT nFlags,
UINT_PTR nIDNewItem = 0,
LPCTSTR lpszNewItem = NULL
);
BOOL AppendMenu(
UINT nFlags,
UINT_PTR nIDNewItem,
const CBitmap* pBmp
);
Parametry
nFlags
Określa informacje o stanie nowego elementu menu jest dodawane do menu.Składa się z jednej lub więcej wartości wymienione w sekcji Uwagi.nIDNewItem
Określa identyfikator polecenia nowy element menu lub, jeśli nFlags jest ustawiona na MF_POPUP, uchwyt menu (HMENU) z wyskakującego menu.nIDNewItem Parametr jest ignorowany (nie jest to potrzebne), jeśli nFlags jest ustawiona na MF_SEPARATOR.lpszNewItem
Określa zawartość nowego elementu menu.nFlags Parametr jest używany do interpretowania lpszNewItem w następujący sposób:nFlags
Interpretacja lpszNewItem
MF_OWNERDRAW
Zawiera wartość 32-bitowe dostarczone aplikacji używające aplikacji do obsługi dodatkowych danych skojarzone z elementem menu.Ta wartość 32-bitowe jest dostępne do aplikacji podczas przetwarzania WM_MEASUREITEM i WM_DRAWITEM wiadomości.Wartość jest przechowywana w itemData Członkowskich struktury dostarczonych z tych wiadomości.
MF_STRING
Zawiera wskaźnik ciąg zakończony znakiem null.Jest to domyślny interpretacji.
MF_SEPARATOR
lpszNewItem Parametr jest ignorowany (nie jest konieczne).
pBmp
Wskazuje na CBitmap obiekt, który będzie używany jako element menu.
Wartość zwracana
Niezerowa, jeśli funkcja jest pomyślne; 0 inaczej.
Uwagi
Wniosek można określić stan elementu menu przez ustawienie wartości nFlags.Gdy nIDNewItem określa wyskakującego menu, staje się częścią menu, do której jest dołączony.Jeśli zniszczenia tego menu, menu dołączonych również zostać zniszczone.Dołączone menu powinny być odłączone od CMenu obiekt, aby uniknąć konfliktu.Należy zauważyć, że MF_STRING i MF_OWNERDRAW nie są prawidłowe dla wersji bitmapy AppendMenu.
Poniższa lista zawiera flagi, które mogą być ustawione w nFlags:
MF_CHECKED działa jako przełącznik z MF_UNCHECKED do domyślnego znacznika wyboru obok elementu.Gdy aplikacja dostaw bitmapy znacznik wyboru (zobacz SetMenuItemBitmaps Członkowskich funkcji), mapy bitowej "znacznik na" jest wyświetlany.
MF_UNCHECKED działa jako przełącznik z MF_CHECKED , aby usunąć znacznik wyboru obok elementu.Gdy aplikacja dostaw bitmapy znacznik wyboru (zobacz SetMenuItemBitmaps Członkowskich funkcji), mapy bitowej "znacznik wyboru off" jest wyświetlany.
MF_DISABLED wyłącza element menu, tak że nie może być wybrany, ale nie dim.
MF_ENABLEDUmożliwia element menu, który można wybrać i przywraca go od jego stanu jako wygaszone.
MF_GRAYED wyłącza element menu, który nie może być wybrany i przyciemnia go.
MF_MENUBARBREAK umieszcza element w nowym wierszu statyczne menu lub nowej kolumny w wyskakujących menu.Nową kolumnę z wyskakującego menu będą rozdzielane z kolumny stare pionowa linia podziału.
MF_MENUBREAK umieszcza element w nowym wierszu statyczne menu lub nowej kolumny w wyskakujących menu.Nie wyraźnej linii jest umieszczony między kolumnami.
MF_OWNERDRAWOkreśla, że element jest element rysowania przez właściciela.Po wyświetleniu menu po raz pierwszy odbiera okna, który jest właścicielem menu WM_MEASUREITEM komunikat, który pobiera wysokość i szerokość elementu menu.WM_DRAWITEM Wiadomości jest wysyłane, gdy właściciel musi zaktualizować wygląd elementu menu.Ta opcja nie jest prawidłowy dla elementu menu najwyższego poziomu.
MF_POPUP określa element menu wyskakującego menu skojarzone.Parametr identyfikator Określa dojście do wyskakującego menu, który ma być skojarzony z elementem.Służy do dodawania do elementu menu wyskakującego wyskakującego menu najwyższego poziomu lub hierarchiczne menu wyskakującego.
MF_SEPARATOR rysuje linię podziału.Można używane tylko w wyskakującym menu.Ten wiersz nie wygaszone, wyłączony lub wyróżnione.Inne parametry są ignorowane.
MF_STRING Określa, że element menu jest ciągiem znaków.
Każdy z następujących grup list flagi, które wzajemnie się wykluczają i nie mogą być używane razem:
MF_DISABLED, MF_ENABLED, i MF_GRAYED
MF_STRING, MF_OWNERDRAW, MF_SEPARATORi wersji bitmapy
MF_MENUBARBREAK i MF_MENUBREAK
MF_CHECKED i MF_UNCHECKED
W przypadku, gdy menu rezyduje w oknie zostanie zmieniona (lub nie jest wyświetlane okno), aplikacja powinna wywołać CWnd::DrawMenuBar.
Przykład
Zobacz przykład dla CMenu::CreateMenu.
Wymagania
Nagłówek: afxwin.h