Freigeben über


GetMenuStringA-Funktion (winuser.h)

Kopiert die Textzeichenfolge des angegebenen Menüelements in den angegebenen Puffer.

Hinweis Die funktion GetMenuString wurde abgelöst. Verwenden Sie die GetMenuItemInfo Funktion, um den Menüelementtext abzurufen.
 

Syntax

int GetMenuStringA(
  [in]            HMENU hMenu,
  [in]            UINT  uIDItem,
  [out, optional] LPSTR lpString,
  [in]            int   cchMax,
  [in]            UINT  flags
);

Parameter

[in] hMenu

Typ: HMENU

Ein Handle für das Menü.

[in] uIDItem

Typ: UINT-

Das zu ändernde Menüelement, wie vom uFlag Parameter bestimmt.

[out, optional] lpString

Typ: LPTSTR-

Der Puffer, der die mit Null beendete Zeichenfolge empfängt. Wenn die Zeichenfolge so lange oder länger als lpStringist, wird die Zeichenfolge abgeschnitten und das endende Nullzeichen hinzugefügt. Wenn lpString-NULL-ist, gibt die Funktion die Länge der Menüzeichenfolge zurück.

[in] cchMax

Typ: int

Die maximale Länge der zu kopierenden Zeichenfolge in Zeichen. Wenn die Zeichenfolge länger als das im nMaxCount Parameter angegebene Maximum ist, werden die zusätzlichen Zeichen abgeschnitten. Wenn nMaxCount 0 ist, gibt die Funktion die Länge der Menüzeichenfolge zurück.

[in] flags

Typ: UINT-

Gibt an, wie der parameter uIDItem interpretiert wird. Dieser Parameter muss einen der folgenden Werte aufweisen.

Wert Bedeutung
MF_BYCOMMAND
0x000000000L
Gibt an, dass uIDItem- den Bezeichner des Menüelements angibt. Wenn weder das MF_BYCOMMAND noch MF_BYPOSITION Flag angegeben ist, ist das MF_BYCOMMAND Flag die Standardkennzeichnung.
MF_BYPOSITION
0x00000400L
Gibt an, dass uIDItem- die nullbasierte relative Position des Menüelements angibt.

Rückgabewert

Typ: int

Wenn die Funktion erfolgreich ist, gibt der Rückgabewert die Anzahl der zeichen an, die in den Puffer kopiert wurden, nicht einschließlich des endenden Nullzeichens.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null.

Wenn das angegebene Element nicht vom Typ MIIM_STRING oder MFT_STRINGist, ist der Rückgabewert null.

Bemerkungen

Der parameter nMaxCount muss eine größer sein als die Anzahl von Zeichen in der Textzeichenfolge, um das endende Nullzeichen aufzunehmen.

Wenn nMaxCount 0 ist, gibt die Funktion die Länge der Menüzeichenfolge zurück.

Sicherheitswarnung

Der parameter lpString ist ein TCHAR puffer, und nMaxCount ist die Länge der Menüzeichenfolge in Zeichen. Die Größenanpassung dieser Parameter kann zu einem Abschneiden der Zeichenfolge führen, was zu möglichen Datenverlusten führt.

Beispiele

Ein Beispiel finden Sie unter Erstellen von bearbeitbaren Zugriffstasten.

Anmerkung

Der winuser.h-Header definiert GetMenuString als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- winuser.h (enthalten Windows.h)
Library User32.lib
DLL- User32.dll
API-Satz ext-ms-win-ntuser-menu-l1-1-3 (eingeführt in Windows 10, Version 10.0.14393)

Siehe auch

Konzeptionelle

GetMenuItemID-

Menüs

Referenz-