Functions > GUI > GUICtrlCreate >


GUICtrlCreateMenuItem

Cr�e un �l�ment pour un contr�le Menu.

GUICtrlCreateMenuItem ( "text", menuID [, menuentry = -1 [, menuradioitem = 0]] )

Param�tres

text Le texte du contr�le.
menuID Vous permet de cr�er un sous-menu dans le menu r�f�renc�. Si cette valeur est �gale � -1, le sous-menu se r�f�re au premier niveau du menu.
menuentry [optionnel] Vous permet de d�finir le nombre d'entr�e � cr�er. Les entr�es sont num�rot�es � partir de 0.
menuradioitem [optionnel] 0 (par d�faut) = cr�e un �l�ment de menu normal, 1 = cr�e un menuradioitem

Valeur de retour

Succ�s: Retourne l'ID du nouvel �l�ment.
�chec: Retourne 0.

Remarques

Pour d�finir ou modifier des informations dans le contr�le, Consultez GUICtrlUpdate...() fonctions.

Si le param�tre Text est "", alors une ligne de s�paration est cr��e. GUICtrlSetState() peut �tre utilis� comme pour les autres contr�les. Consultez l'exemple.

En relation

GUICtrlCreateContextMenu, GUICtrlCreateMenu, GUICtrlUpdate..., GUIGetMsg

Exemple

#include <GUIConstantsEx.au3>
#include <MsgBoxConstants.au3>
#include <StaticConstants.au3>

Example()

Func Example()
    GUICreate("My GUI menu", 300, 200)

    Local $sStatus = "Ready"

    Local $idFileMenu = GUICtrlCreateMenu("&File")
    Local $idFileItem = GUICtrlCreateMenuItem("Open", $idFileMenu)
    GUICtrlSetState(-1, $GUI_DEFBUTTON)
    Local $idHelpMenu = GUICtrlCreateMenu("?")
    GUICtrlCreateMenuItem("Save", $idFileMenu)
    GUICtrlSetState(-1, $GUI_DISABLE)
    Local $idInfoItem = GUICtrlCreateMenuItem("Info", $idHelpMenu)
    Local $idExit = GUICtrlCreateMenuItem("Exit", $idFileMenu)
    Local $idRecentFilesMenu = GUICtrlCreateMenu("Recent Files", $idFileMenu, 1)

    GUICtrlCreateMenuItem("", $idFileMenu, 2) ; Cr�e une ligne de s�paration

    Local $idViewMenu = GUICtrlCreateMenu("View", -1, 1) ; Est cr�� avant "?" menu
    Local $idViewStatusItem = GUICtrlCreateMenuItem("Statusbar", $idViewMenu)
    GUICtrlSetState(-1, $GUI_CHECKED)
    GUICtrlCreateButton("OK", 50, 130, 70, 20)
    GUICtrlSetState(-1, $GUI_FOCUS)
    Local $idCancel = GUICtrlCreateButton("Cancel", 180, 130, 70, 20)

    Local $idStatusLabel = GUICtrlCreateLabel($sStatus, 0, 165, 300, 16, BitOR($SS_SIMPLE, $SS_SUNKEN))

    GUISetState(@SW_SHOW)

    Local $sFilePath, $idMsg = GUIGetMsg()
    ; Boucle jusqu'� ce que l'utilisateur quitte.
    While ($idMsg <> $GUI_EVENT_CLOSE) And ($idMsg <> $idCancel) And ($idMsg <> $idExit)
        Switch $idMsg
            Case $idInfoItem
                MsgBox($MB_SYSTEMMODAL, "Info", "Only a test...")

            Case $idFileItem
                $sFilePath = FileOpenDialog("Choose a file...", @TempDir, "All (*.*)")
                If @error Then
                    ContinueLoop
                EndIf
                GUICtrlCreateMenuItem($sFilePath, $idRecentFilesMenu)

            Case $idViewStatusItem
                If BitAND(GUICtrlRead($idViewStatusItem), $GUI_CHECKED) = $GUI_CHECKED Then
                    GUICtrlSetState($idViewStatusItem, $GUI_UNCHECKED)
                    GUICtrlSetState($idStatusLabel, $GUI_HIDE)
                Else
                    GUICtrlSetState($idViewStatusItem, $GUI_CHECKED)
                    GUICtrlSetState($idStatusLabel, $GUI_SHOW)
                EndIf
        EndSwitch
        $idMsg = GUIGetMsg()
    WEnd
EndFunc   ;==>Example