AutoHotKey(오토핫키) 설명서 Menu
Menu
pop-up menu를 작성하거나 표시하거나 한다.task tray 아이콘이나 툴 팁의 설정도 실시할 수 있다.
Menu, MenuName, Cmd [, P3, P4, FutureUse]
Parameters
인수명 | 설명 |
---|---|
MenuName |
「TRAY」라고 하면, task tray의 오른쪽 클릭 메뉴를 설정할 수 있다. 그 이외는, 커스텀 메뉴명이 된다. 커스텀 메뉴는,Add커멘드로 항목을 등록했을 때에 신규 작성된다. |
Cmd, P3, P4 | 아래와 같이 참조 |
FutureUse | 장래의 확장을 위해서 확보되고 있다.현재 이 인수는 무시된다. |
메뉴 항목 조작
- Add , MenuItemName
- 「MenuItemName」(으)로 지정한 표시명으로 메뉴 항목을 추가해, 「MenuItemName」(으)로 지정한 이름의 라벨을 할당한다.
- Add , MenuItemName, Label
- 「MenuItemName」(으)로 지정한 표시명으로 메뉴 항목을 추가해, 「Label」(으)로 지정한 이름의 라벨을 할당한다.
- Add , MenuItemName, :Submenu
-
「MenuItemName」(으)로 지정한 표시명으로 메뉴 항목이 추가되어 선택하면 「Submenu」(으)로 지정한 이름의 메뉴가 전개되게 된다.
「Submenu」의 메뉴는 미리 작성해 둔다.
부메뉴명의 전에 「:」(을)를 붙일 필요가 있다. - Add , MenuItemName,[ Label],Pn
- Pn의n그리고 메뉴를 선택했을 때에 실행되는 스렛드의세치기 우선도(을)를 설정할 수 있다.(례:「P10」)
- Add
- 메뉴에 단락지어 선을 추가한다. 현재로서는, 단락선단체를 삭제하는 것은 할 수 없기 때문에,DeleteAll그리고 전삭제하고 나서 추가 다시 할 수 밖에 없다.
- Delete [, MenuItemName]
-
MenuItemName그리고 지정한 항목을 삭제한다.
MenuItemName하지만 생략 되었을 경우,MenuName의 메뉴 자체가 삭제된다.다른 메뉴에 부메뉴 항목으로서 등록되어 있었을 경우, 그 항목도 삭제된다. - DeleteAll
-
메뉴내의 항목을 모두 삭제한다.
메뉴 자체는 삭제되지 않는다. - Rename, MenuItemName [, NewName]
-
MenuItemName의 항목명을NewName(으)로 변경한다.
NewName하지만 생략 되었을 경우, 항목은 단락지어 선으로 바뀐다.
다른 항목명과 같은 이름으로 하는 것은 할 수 없다. - Check, MenuItemName
- MenuItemName의 항목을 체크가 붙은 상태로 한다.
- Uncheck, MenuItemName
- MenuItemName의 항목을 체크가 붙지 않은 상태로 한다.
- ToggleCheck, MenuItemName
- MenuItemName의 항목의 체크의 유무를 바꾼다.
- Enable, MenuItemName
- MenuItemName의 항목을 유효화한다.
- Disable, MenuItemName
- MenuItemName의 항목을 무효화(선택 불능 상태)한다.
- ToggleEnable, MenuItemName
- MenuItemName의 항목의 유효·무효를 바꾼다.
- Default [, MenuItemName]
-
메뉴의 디폴트 항목을MenuItemName의 항목으로 설정한다.
디폴트 항목은 굵은 글씨로 표시된다.
task tray 메뉴의 경우, task tray 아이콘을 더블 클릭 했을 때에 디폴트 항목이 실행된다.
MenuItemName하지만 생략 되었을 때는,NoDefault(와)과 같게 된다. - NoDefault
- 디폴트 항목의 설정을 해제해, 디폴트 항목이 없는 상태로 한다.
- Standard
- task tray 메뉴에 있는 표준 메뉴 항목을 추가한다
- NoStandard
- 표준 메뉴 항목을 삭제한다
task tray 관계
MenuName(은)는 「TRAY」라고 하는 것
- Icon, FileName [, IconNumber, Freeze]
- task tray 아이콘을 변경한다.
FileName에는 아이콘을 포함한 파일(.ico,.dll,.exe등)(을)를 지정한다.
IconNumber에는 아이콘 번호를 지정.생략시는 「1」(이)가 된다.
FileName(을)를 「*」(으)로 하면, 스크립트의 디폴트 아이콘이 된다.
여기서의 설정은,InputBox(이)나Progress(으)로의 아이콘에도 반영된다.
A_IconNumber(이)나A_IconFile(으)로서 현재의 설정을 취득할 수 있다.(디폴트 때는 비운다)
Freeze에1(을)를 지정하면, 트레이 아이콘을 고정해,Pause커멘드나Suspend커멘드로 아이콘이 변화하지 않게 할 수 있다.Freeze(을)를0(으)로 하면 트레이 아이콘의 고정을 해제할 수 있다. - Icon,,,1
- Pause(이)나Suspend커멘드를 실행했을 때에 트레이 아이콘이 변하지 않게 한다
- Icon,,0
- Icon,,1의 설정을 해제
- Icon
- #NoTrayIcon지령으로 아이콘이 비표시가 되어 있을 때, 디폴트의 아이콘을 표시한다.
- NoIcon
-
트레이 아이콘을 비표시로 한다.
스크립트 기동시에 아이콘을 비표시로 하고 싶은 경우,#NoTrayIcon지령을 사용하는 편이 좋다.
아이콘이 비표시인지 어떤지는A_IconHidden변수로 참조할 수 있다.(0(이)라면 표시,1(이)라면 비표시) - Tip [, Text]
-
트레이 아이콘에 마우스를 실었을 때에 표시되는 툴 팁을 변경한다.
Text하지만 생략 되었을 경우, 스크립트의 디폴트 텍스트가 된다.
A_IconTip변수로 설정한 내용을 참조할 수 있다.(디폴트 때는 하늘)
타
- Show [,X ,Y]
-
MenuName의 메뉴를 표시한다.
GUI윈도우의 도구모음에 관련지을 수 있고 있는 메뉴는 표시할 수 없다.
X,Y에 표시하는 좌표를 지정한다.생략시는 마우스 커서 위치.
좌표의 지정 방법은, 「CoordMode, Menu
」(으)로 액티브 윈도우로부터의 상대 좌표인가, 스크린 전체로의 절대 좌표인지를 설정할 수 있다. - Color, ColorValue[, Single]
-
메뉴의 배경색을 변경한다.
ColorValue에는RRGGBB형식의 칼라 코드(례:FF9900)(이)나색의 이름(례:Red)(을)를 지정할 수 있다.
ColorValue(을)를 생략 할까 「Default」(을)를 지정하면, 시스템으로 설정된 메뉴 배경색으로 돌아온다.
통상은, 부메뉴의 배경색도 변경되지만, 제3인수에 「Single」(을)를 지정하면 부메뉴는 변경되지 않는다.
이 서브 커멘드는Windows95/NT그럼 효과가 없다. - Click, ClickCount
-
트레이 아이콘으로부터 메인 윈도우를 표시하기 위한 조작을 설정한다.
ClickCount에 「1」(을)를 지정하면, 싱글 클릭으로 표시된다.
「2」(을)를 지정하면, 더블 클릭으로 표시된다.
디폴트는 「2」. - MainWindow
-
메뉴로부터 스크립트의 메인 윈도우를 표시하는 것을 허락한다.
MenuName하TRAY(으)로 한다.
EXE화된 스크립트에서만 유효. - NoMainWindow
- 메뉴로부터 스크립트의 메인 윈도우를 표시하는 것을 금지한다.
ListLines,ListVars,ListHotkeys,KeyHistory커멘드가 실행되었을 경우는, 여기서의 설정에 관계없이 표시된다. - UseErrorLevel [, off]
-
통상,Menu커멘드 실행시에 어떠한 에러가 있으면, 에러 다이얼로그가 표시되어 현재의 스렛드는 종료한다.
UseErrorLevel(을)를 실시하면, 에러 다이얼로그를 표시하지 않고,ErrorLevel변수를 「1」(으)로 한다.
인수에OFF(을)를 붙이면, 이 설정을OFF(으)로 할 수 있다.
이 설정은, 모든 메뉴에 영향을 준다.
Remarks
메뉴 아이템명에 「&a」(와)과 같이 「&」에 이어 영숫자를 붙인 것이 있으면, 그 부분이 밑줄 첨부의 영숫자로서 표시되어 대응하는 키를 누르는 것으로 그 메뉴 아이템을 선택할 수 있게 된다.
메뉴나 메뉴 항목명은 최대260문자까지.
메뉴 항목명은 대문자 소문자를 무시해 매치한다.
메뉴 아이템은 항상 맨 밑에 추가된다.
트레이 메뉴 위에 항목을 추가하고 싶은 경우,NoStandard그리고 일단 표준 항목을 삭제하고,Standard그리고 추가 다시 한다.
하늘의 메뉴는 표시할 수 없다.
메뉴 아이템은스렛드(으)로서 실행된다.
메뉴 아이템의 스렛드 실행중에 다른 스렛드가 끼어들기도 한다.
우선도를 설정해, 낮은 우선도의 스렛드의 세치기를 금지할 수도 있다.
「A_ThisMenuItem」변수로 제일 최근 실행된 실행된 메뉴 항목명을, 「A_ThisMenu」(으)로 메뉴명을 참조할 수 있다.
hot key를 사용하지 않고, 메뉴 아이템등에서의 봐 액션을 실행하는 스크립트의 경우,#Persistent지령을 기술해 명시적으로 상주 상태로 하지 않으면 안 된다.
Related
Threads, Gosub, Return, SetTimer, #Persistent
Example(s)
Menu, tray, add, Item1, MenuHandler return MenuHandler: MsgBox You selected %A_ThisMenuItem% from menu %A_ThisMenu% return ; This test script demonstrates some of the various menu commands. #Persistent #SingleInstance menu, tray, add ; separator menu, tray, add, TestToggle&Check menu, tray, add, TestToggleEnable menu, tray, add, TestDefault menu, tray, add, TestStandard menu, tray, add, TestDelete menu, tray, add, TestDeleteAll menu, tray, add, TestRename menu, tray, add, Test return ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; TestToggle&Check: menu, tray, ToggleCheck, TestToggle&Check menu, tray, Enable, TestToggleEnable ; Also enables the next test since it can't undo the disabling of itself. menu, tray, add, TestDelete ; Similar to above. return TestToggleEnable: menu, tray, ToggleEnable, TestToggleEnable return TestDefault: if default = TestDefault { menu, tray, NoDefault default = } else { menu, tray, Default, TestDefault default = TestDefault } return TestStandard: if standard <> n { menu, tray, NoStandard standard = n } else { menu, tray, Standard standard = y } return TestDelete: menu, tray, delete, TestDelete return TestDeleteAll: menu, tray, DeleteAll return TestRename: if NewName <> renamed { OldName = TestRename NewName = renamed } else { OldName = renamed NewName = TestRename } menu, tray, rename, %OldName%, %NewName% return Test: MsgBox, You selected "%A_ThisMenuItem%" in menu "%A_ThisMenu%". return
'AutoHotKey > Commands' 카테고리의 다른 글
AutoHotKey(오토핫키) 설명서 MouseClick (0) | 2014.08.14 |
---|---|
AutoHotKey(오토핫키) 설명서 Mod() (0) | 2014.08.14 |
AutoHotKey(오토핫키) 설명서 Loop (registry) (0) | 2014.08.14 |
AutoHotKey(오토핫키) 설명서 Loop,READ (0) | 2014.08.14 |
AutoHotKey(오토핫키) 설명서 Loop,PARSE (0) | 2014.08.14 |