InsertMenu

Funkcja InsertMenu wstawia nowy element menu do menu, przenosząc inne elementy menu.

Funkcja InsertMenu została zastąpiona funkcji InsertMenuItem . Można nadal używać InsertMenu, jednakże, jeśli nie potrzebujesz wszelkich rozszerzonych funkcji InsertMenuItem.

(BOOL InsertMenu HMENU  hMenu, / / obsługi menuUINTuPosition, / / elementu menu tego nowego menu elementu poprzedzaUINTuFlags, / / flags elementu menuUINTuIDNewItem, / / menu Pozycja identyfikator lub dojście do rozwijanej / / menu lub podmenuLPCTSTRlpNewItem / / zawartości elementu menu);
 

Parametry

hMenu
Dojście do menu aby zmienić.
uPosition
Określa element menu, przed którym nowego elementu menu jest wstawiany, określone przez parametr uFlags.
uFlags
Określa flagi, które kontrolują interpretacji parametru uPosition i zawartości, wygląd i zachowanie nowego elementu menu. Ten parametr musi być kombinacją jedna z następujących wartości wymagane i co najmniej jedną z wartości podanych w poniższej sekcji uwagi.
Wartość Opis
MF_BYCOMMAND Wskazuje, że parametr uPosition podaje identyfikator elementu menu. Flaga MF_BYCOMMAND jest wartością domyślną, jeśli określono flagę MF_BYCOMMAND ani MF_BYPOSITION.
MF_BYPOSITION Wskazuje, że parametr uPosition daje od zera względne położenie nowego elementu menu. Jeśli uPosition jest równa 0xFFFFFFFF, nowego elementu menu jest dołączany do końca menu.

uIDNewItem
Określa identyfikator nowego elementu menu lub, jeśli parametr uFlags ma MF_POPUP ustawiona flaga, uchwyt z rozwijanego menu lub podmenu.
lpNewItem
Określa zawartość nowego elementu menu. Interpretacja lpNewItem zależy od tego, czy parametr uFlags zawiera flagę MF_BITMAP, MF_OWNERDRAW lub MF_STRING, w następujący sposób:
Wartość Opis
MF_BITMAP Zawiera uchwyt bitmapy.
MF_OWNERDRAW Zawiera wartość 32-bitowe, dostarczone przez aplikację, która może służyć do utrzymania dodatkowe dane odnoszące się do elementu menu. Wartość jest członek itemData struktury wskazanym przez parametr fikcyjnymi WM_MEASUREITEM lub WM_DRAWITEM wiadomości wysyłane, gdy element menu jest tworzony lub aktualizowany jego wygląd.
MF_STRING Zawiera wskaźnik na ciąg zakończony znakiem null (wartość domyślna).

Zwraca wartości

Jeśli funkcja, wartość zwracany jest różna od zera.

Jeśli funkcja zawiedzie, wartość zwracany jest równa zero. Aby uzyskać rozszerzonych informacji o błędach, należy wywołać GetLastError.

Uwagi

Aplikacja musi wywołać funkcję DrawMenuBar w każdym przypadku zmiany menu, czy menu jest wyświetlane okno.

Poniższa lista zawiera opis flagi, które mogą być ustawione w parametrze uFlags:

Wartość Opis
MF_BITMAP Używa bitmapy jako element menu. Parametr lpNewItem zawiera dojścia do bitmapy.
MF_CHECKED Umieści znacznik wyboru obok tego elementu menu. Jeżeli aplikacji zawiera znacznik wyboru bitmapy (patrz SetMenuItemBitmaps), ta flaga powoduje wyświetlenie bitmapy znacznik wyboru obok tego elementu menu.
MF_DISABLED Wyłącza elementu menu, aby nie może być wybrany, ale nie szary.
MF_ENABLED Umożliwia elementu menu, tak aby można zaznaczać i przywraca go ze stanu wygaszone.
MF_GRAYED Wyłącza elementu menu i grays, więc nie może być zaznaczone.
MF_MENUBARBREAK Funkcje, takie same jak MF_MENUBREAK flagę dla paska menu. W menu rozwijanym, podmenu lub menu skrótów nowa kolumna jest oddzielony od starego kolumny przez linię pionową.
MF_MENUBREAK Umieszcza element w nowym wierszu (dla pasków menu) lub w nowej kolumnie (w menu rozwijanym, podmenu lub menu skrótów) bez oddzielających kolumny.
MF_OWNERDRAW Określa, że element jest element rysowane przez właściciela. Zanim menu zostanie wyświetlony po raz pierwszy, okna, który jest właścicielem menu odbiera wiadomość WM_MEASUREITEM do pobrania szerokość i wysokość elementu menu. Wiadomość WM_DRAWITEM są następnie wysyłane do procedury okna w oknie właściciela, ilekroć wygląd elementu menu musi być uaktualniany.
MF_POPUP Określa, że element menu otwiera rozwijanego menu lub podmenu. Parametr uIDNewItem określa uchwyt z rozwijanego menu lub podmenu. Ta flaga jest stosowana, aby dodać nazwy menu na pasku menu lub element menu, który spowoduje otwarcie podmenu w menu rozwijanym, podmenu lub menu skrótów.
MF_SEPARATOR Rysuje linię podziału poziomego. Ta flaga jest stosowana tylko w rozwijanym menu, podmenu lub menu skrótów. Wiersz nie wyszarzone, wyłączony lub wyróżniane. Parametry lpNewItem i uIDNewItem są ignorowane.
MF_STRING Określa, że element menu jest ciągiem tekstowym; Parametr lpNewItem wskazuje ciąg.
MF_UNCHECKED Nie należy umieścić znacznik wyboru obok tego elementu menu (domyślnie). Jeżeli aplikacji dostaw zaznaczenie bitmapy (patrz funkcja SetMenuItemBitmaps ), ta flaga wyświetla zaznaczone mapę bitową obok elementu menu.

Następujące grupy flag nie mogą być używane razem:

Systemu Windows CE: Windows CE nie obsługuje flagi MF_BITMAP lub Flaga MF_DISABLED w parametrze uFlags . Elementy menu nie może być wyłączone bez są wyszarzone. Aby wyłączyć element menu Użyj flagi MF_GRAYED.

Windows CE w wersji 1.0 obsługuje menu kaskadowe. Jeśli używasz systemu Windows CE 1.0, nie można wstawić menu MF_POPUP do innego menu wyskakującego. Jeśli używany system Windows CE 2.0 lub nowszy, możesz.

Zobacz też

Menu omówienie, Funkcje Menu, AppendMenu zawsze zwraca, DeleteMenu, DrawMenuBar, InsertMenuItem, ModifyMenu, RemoveMenu, SetMenuItemBitmaps, WM_DRAWITEM, WM_MEASUREITEM

Index