創(chuàng)建菜單(Menu)控件.
GUICtrlCreateMenu ( "子菜單文本" [, 菜單ID [, 菜單序號]]
)
子菜單文本 | 子菜單文本. |
菜單ID | [可選參數(shù)] 子菜單所屬主菜單的標識符. 如設(shè)為 -1, 則使用第一級菜單作為主菜單. |
菜單序號 | [可選參數(shù)] 定義創(chuàng)建菜單項的數(shù)量. 菜單項序號從 0 開始計算. |
成功: | 返回控件標識符(控件ID). |
失敗: | 返回 0. |
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
Example()
Func Example()
Local
$defaultstatus =
"準備就緒",
$filemenu,
$fileitem
Local $helpmenu, $infoitem, $exititem, $recentfilesmenu
Local $viewmenu, $viewstatusitem , $cancelbutton
Local
$statuslabel,
$msg, $file
GUICreate("我的菜單 GUI", 300, 200)
$filemenu = GUICtrlCreateMenu("文件 &F")
$fileitem = GUICtrlCreateMenuItem
("打開", $filemenu)
GUICtrlSetState(-1, $GUI_DEFBUTTON)
$helpmenu = GUICtrlCreateMenu("?")
GUICtrlCreateMenuItem ("保存",
$filemenu)
GUICtrlSetState(-1, $GUI_DISABLE)
$infoitem = GUICtrlCreateMenuItem
("信息", $helpmenu)
$exititem = GUICtrlCreateMenuItem
("退出", $filemenu)
$recentfilesmenu = GUICtrlCreateMenu("最近的文件", $filemenu, 1)
GUICtrlCreateMenuItem ("",
$filemenu,
2) ; 創(chuàng)建一個分隔線
$viewmenu = GUICtrlCreateMenu("查看", -1,
1) ; 之前創(chuàng)建的"?"菜單
$viewstatusitem = GUICtrlCreateMenuItem ("狀態(tài)欄",
$viewmenu)
GUICtrlSetState(-1, $GUI_CHECKED)
GUICtrlCreateButton("確定",
50, 130, 70, 20)
GUICtrlSetState(-1, $GUI_FOCUS)
$cancelbutton = GUICtrlCreateButton("取消",
180, 130, 70, 20)
$statuslabel = GUICtrlCreateLabel($defaultstatus, 0, 165, 300, 16, BitOR($SS_SIMPLE, $SS_SUNKEN))
GUISetState()
While
1
$msg = GUIGetMsg()
If $msg = $fileitem Then
$file =
FileOpenDialog("選擇文件...", @TempDir, "所有文件 (*.*)")
If @error
<> 1
Then GUICtrlCreateMenuItem ($file,
$recentfilesmenu)
EndIf
If $msg = $viewstatusitem Then
If BitAND(GUICtrlRead($viewstatusitem ), $GUI_CHECKED) = $GUI_CHECKED Then
GUICtrlSetState($viewstatusitem , $GUI_UNCHECKED)
GUICtrlSetState($statuslabel, $GUI_HIDE)
Else
GUICtrlSetState($viewstatusitem , $GUI_CHECKED)
GUICtrlSetState($statuslabel, $GUI_SHOW)
EndIf
EndIf
If $msg = $GUI_EVENT_CLOSE Or $msg = $cancelbutton Or $msg = $exititem Then ExitLoop
If $msg = $infoitem Then MsgBox(0, "信息", "只是一個測試...")
WEnd
GUIDelete()
EndFunc ;==>Example
provider with jb51.net (unicode) |