# Switcher Class
1. 性質:靜態類、實例類
2. 開發目的:為軟件提供切換快捷鍵
## 域 Field
### static Options := "Max"
Run命令的Options,默認是"Max",也就是以最大化窗口形式運行。
## 方法 Method
### switch(aWinTitle,aPathOrFuncObj,aWait = 0)
**切換窗口(軟件)**
算法如下:
如果窗口存在{
? 如果窗口處于激活狀態
? 最小化
? 否則,如果窗口未處于激活狀態
? 激活
}
否則,如果窗口不存在{
? 以最大化窗口形式運行軟件
}
返回 winExist(aWinTitle)
#### 參數 Parameters:
- aWinTitle - 窗口的title
- aPathOrFuncObj - 路徑或者方法
如果是路徑,則以最大化形式Run;否則,如果是方法,則直接運行方法
- aWait - 最長等待時間。當程序窗口不存在的時候,會運行程序。當運行命令下達后,如果aWait不為零,則線程等待程序窗口存在后再運行。aWait為最長等待時間,默認參數為0,也就是不等待。
#### 返回 Returns:
如果是路徑,則以最大化形式Run命令的 OutputVarPID 變量;否則,如果是方法,則返回方法的結果。
#### 拋出異常 Throws:
- null
#### 示例 Example
```autohotkey
Switcher.switch("ahk_exe SourceTree.exe","C:\Users\Administrator\AppData\Local\SourceTree\app-3.1.2\SourceTree.exe")
```
### toggle(aWinTitle)
**切換窗口(軟件)**
算法如下:
如果窗口存在{
? 如果窗口處于激活狀態
? 最小化
? 否則,如果窗口未處于激活狀態
? 激活
}
返回 winExist(aWinTitle)
#### 參數 Parameters:
- aWinTitle - 窗口的title
#### 返回 Returns:
null
#### 拋出異常 Throws:
- null
#### 示例 Example
```autohotkey
Switcher.toggle("ahk_exe SourceTree.exe","C:\Users\Administrator\AppData\Local\SourceTree\app-3.1.2\SourceTree.exe")
```
- 指南 (README)
- 常見問題 (FAQ)
- 更新歷史(CHANGELOG)
- 貢獻指南 (CONTRIBUTING)
- 開源協議 (LICENCE)
- 鳴謝 (ACKNOWLEDGEMENT)
- 文檔模板 (TEMPLATE)
- 新手指南(BEGINNER_GUIDE)
- 語法高亮(HIGHLIGHTING)
- Class
- _Container
- _EX
- _List
- _Map
- _Win
- _Wins
- BeanEnum
- HotString
- HotStringMaps
- InvisibleCharacter
- JSON
- JsonFile
- Method
- ObservableMap
- ObservableObj
- WinEvent
- Timer
- MesToast
- APPLocker
- AutoClassify
- Everything
- Function
- Ini
- AutoInputBox
- ParaChecker
- PathObj
- RunningSpeedTest
- Script
- Switcher
- Stack
- TimeChecker
- Type
- UMSS
- Function
- assert()
- Analyze()
- AnalyzeClassName()
- AutoBind()
- bulkMoveFile()
- ExcelToList()
- getClass()
- getCurrentTime()
- getFunc()
- Instanof()
- InstanceCheck()
- loadMethod()
- LogPrintln()
- rawCall()
- RandomStr()
- showObj()
- Type()
- throwWithSt()
- UseCMD()
- ObjDump()
- Test
- ObjLoad()
- StringMethod
- TypeClass
- MapFactory()