返回列表 发帖

[AU3基础] 如何对GUICtrlCreateMenu建立的MENU进行click的操作?[已解决]

本帖最后由 kk_lee69 于 2016-10-26 21:28 编辑

如何对GUICtrlCreateMenu建立的MENU进行click的操作?
如何 利用一个 BUTTON 按钮  对 自己使用GUICtrlCreateMenu建立的MENU进行click的操作?
我想用一个 BUTTON 按钮 ,按下后 自动模拟  对自己建立的 MENU 上面的某个项目 进行 点击 click的操作??

试过了 ControlClick ("","",$MenuItemA41)  没有作用
该怎么作  才可以呢??


補充 代碼:

  1. #include <GUIConstantsEx.au3>

  2. #include <StaticConstants.au3>

  3.  

  4. _Main()

  5.  

  6. Func _Main()

  7.     Local $iCancel, $iExit, $iFileItem, $iFileMenu, $iHelpMenu, $iInfoItem

  8.     Local $iRecentFilesMenu, $iStatusLabel, $iViewMenu, $iViewStatusItem, $sFilePath, $sStatus = "Ready"

  9.  

  10.     GUICreate("我的菜單 GUI", 300, 200)

  11.  

  12.     $sStatus = "準備就緒"

  13.  

  14.     $iFileMenu = GUICtrlCreateMenu("文件 &F")

  15.     $iFileItem = GUICtrlCreateMenuItem("打開", $iFileMenu)

  16.     GUICtrlSetState(-1, $GUI_DEFBUTTON)

  17.     $iHelpMenu = GUICtrlCreateMenu("幫助")

  18.     GUICtrlCreateMenuItem("保存", $iFileMenu)

  19.     GUICtrlSetState(-1, $GUI_DISABLE)

  20.     $iInfoItem = GUICtrlCreateMenuItem("信息", $iHelpMenu)

  21.     $iExit = GUICtrlCreateMenuItem("退出", $iFileMenu)

  22.     $iRecentFilesMenu = GUICtrlCreateMenu("最近檔", $iFileMenu, 1)

  23.  

  24.     GUICtrlCreateMenuItem("", $iFileMenu, 2) ; 創建一個分隔線

  25.  

  26.     $iViewMenu = GUICtrlCreateMenu("查看", -1, 1) ; 之前創建的"?"菜單

  27.     $iViewStatusItem = GUICtrlCreateMenuItem("狀態列", $iViewMenu)

  28.     GUICtrlSetState(-1, $GUI_CHECKED)

  29.     $BUTTON1=GUICtrlCreateButton("模擬按下按鈕", 50, 130, 100, 20)

  30.     GUICtrlSetState(-1, $GUI_FOCUS)

  31.  

  32.  

  33.     $iStatusLabel = GUICtrlCreateLabel($sStatus, 0, 165, 300, 16, BitOR($SS_SIMPLE, $SS_SUNKEN))

  34.  


  35.  

  36.     While 1

  37.         Switch GUIGetMsg()

  38.             Case $GUI_EVENT_CLOSE,  $iExit

  39.                 Exit

  40.  

  41.             Case $iInfoItem

  42.                 MsgBox(64, "資訊", "只是一個測試...")

  43.  

  44.             Case $iFileItem

  45.                 $sFilePath = FileOpenDialog("選擇檔...", @TempDir, "全部 (*.*)")

  46.                 If @error Then

  47.                     ContinueLoop

  48.                 EndIf

  49.                 GUICtrlCreateMenuItem($sFilePath, $iRecentFilesMenu)

  50.  

  51.             Case $iViewStatusItem

  52.                 If BitAND(GUICtrlRead($iViewStatusItem), $GUI_CHECKED) = $GUI_CHECKED Then

  53.                     GUICtrlSetState($iViewStatusItem, $GUI_UNCHECKED)

  54.                     GUICtrlSetState($iStatusLabel, $GUI_HIDE)

  55.                 Else

  56.                     GUICtrlSetState($iViewStatusItem, $GUI_CHECKED)

  57.                     GUICtrlSetState($iStatusLabel, $GUI_SHOW)

  58.                 EndIf

  59.                        

  60.                Case $BUTTON1

  61.                                  

  62.                   ControlClick ("","",$iInfoItem)

  63.                                  

  64.         EndSwitch

  65.     WEnd

  66. EndFunc   ;==>_Main

复制代码 高亮切换


如何 按下 $BUTTON1 會模擬點擊  $iInfoItem   彈出   MsgBox(64, "資訊", "只是一個測試...")

  1. WinMenuSelectItem("","","幫助","信息")
复制代码

TOP

回复 2# zghwelcome

果然可以ㄟ

怪了 我記得我也測試過這個  不成功

我在試看看  感謝!!

TOP

回复 2# zghwelcome

我知道了 我測試的時候 字打錯了 @@  

果然這樣就可以了  感謝 幫助

TOP

共享与帮助是本论坛最好的传统
2017- 金币不够用,也要下载好源码!

TOP

返回列表