demos/automation_help_demo.py
def DemoCN():
    """for Chinese language"""
    thisWindow = auto.GetConsoleWindow()
    auto.Logger.ColorfullyWrite('我将运行<Color=Cyan>cmd</Color>并设置它的<Color=Cyan>屏幕缓冲区</Color>使<Color=Cyan>cmd</Color>一行能容纳很多字符\n\n')
    time.sleep(3)

    auto.SendKeys('{Win}r')
    while not isinstance(auto.GetFocusedControl(), auto.EditControl):
        time.sleep(1)
    auto.SendKeys('cmd{Enter}')
    cmdWindow = auto.WindowControl(RegexName = '.+cmd.exe')
    cmdWindow.TitleBarControl().RightClick()
    auto.SendKey(auto.Keys.VK_P)
    optionWindow = cmdWindow.WindowControl(SubName = '属性')
    optionWindow.TabItemControl(SubName = '选项').Click()
    optionTab = optionWindow.PaneControl(SubName = '选项')
    checkBox = optionTab.CheckBoxControl(AutomationId = '103')
    if checkBox.GetTogglePattern().ToggleState != auto.ToggleState.On:
        checkBox.Click()
    checkBox = optionTab.CheckBoxControl(AutomationId = '104')
    if checkBox.GetTogglePattern().ToggleState != auto.ToggleState.On:
        checkBox.Click()
    optionWindow.TabItemControl(SubName = '布局').Click()
    layoutTab = optionWindow.PaneControl(SubName = '布局')
    layoutTab.EditControl(AutomationId='301').GetValuePattern().SetValue('300')
    layoutTab.EditControl(AutomationId='303').GetValuePattern().SetValue('3000')
    layoutTab.EditControl(AutomationId='305').GetValuePattern().SetValue('140')
    layoutTab.EditControl(AutomationId='307').GetValuePattern().SetValue('30')
    optionWindow.ButtonControl(AutomationId = '1').Click()
    cmdWindow.SetActive()
    rect = cmdWindow.BoundingRectangle
    auto.DragDrop(rect.left + 50, rect.top + 10, 50, 30)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('我将运行<Color=Cyan>记事本</Color>并输入<Color=Cyan>Hello!!!</Color>\n\n')
    time.sleep(3)

    subprocess.Popen('notepad')
    notepadWindow = auto.WindowControl(searchDepth = 1, ClassName = 'Notepad')
    cx, cy = auto.GetScreenSize()
    notepadWindow.MoveWindow(cx // 2, 20, cx // 2, cy // 2)
    time.sleep(0.5)
    notepadWindow.EditControl().SendKeys('Hello!!!', 0.05)
    time.sleep(1)

    dir = os.path.dirname(__file__)
    scriptPath = os.path.abspath(os.path.join(dir, '..\\automation.py'))

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py -h</Color>"显示帮助\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -h'.format(scriptPath) + '{Enter}', 0.05)
    time.sleep(3)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py -r -d1</Color>"显示所有顶层窗口, 即桌面的子窗口\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -r -d1 -t0'.format(scriptPath) + '{Enter}', 0.05)
    time.sleep(3)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py -c</Color>"显示鼠标光标下的控件\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -c -t3'.format(scriptPath) + '{Enter}', 0.05)
    notepadWindow.SetActive()
    notepadWindow.MoveCursorToMyCenter()
    time.sleep(3)
    cmdWindow.SetActive(waitTime = 2)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py -a</Color>"显示鼠标光标下的控件和它的所有父控件\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -a -t3'.format(scriptPath) + '{Enter}', 0.05)
    notepadWindow.SetActive()
    notepadWindow.MoveCursorToMyCenter()
    time.sleep(3)
    cmdWindow.SetActive(waitTime = 2)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py</Color>"显示当前激活窗口和它的所有子控件\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -t3'.format(scriptPath) + '{Enter}', 0.05)
    notepadWindow.SetActive()
    notepadWindow.EditControl().Click()
    time.sleep(3)
    cmdWindow.SetActive(waitTime = 2)
    time.sleep(3)

    thisWindow.SetActive()
    auto.Logger.WriteLine('演示结束，按Enter退出', auto.ConsoleColor.Green)
    input()
def DemoCN():
    """for Chinese language"""
    thisWindow = auto.GetConsoleWindow()
    auto.Logger.ColorfullyWrite('我将运行<Color=Cyan>cmd</Color>并设置它的<Color=Cyan>屏幕缓冲区</Color>使<Color=Cyan>cmd</Color>一行能容纳很多字符\n\n')
    time.sleep(3)

    auto.SendKeys('{Win}r')
    while not isinstance(auto.GetFocusedControl(), auto.EditControl):
        time.sleep(1)
    auto.SendKeys('cmd{Enter}')
    cmdWindow = auto.WindowControl(RegexName = '.+cmd.exe')
    cmdWindow.TitleBarControl().RightClick()
    auto.SendKey(auto.Keys.VK_P)
    optionWindow = cmdWindow.WindowControl(SubName = '属性')
    optionWindow.TabItemControl(SubName = '选项').Click()
    optionTab = optionWindow.PaneControl(SubName = '选项')
    checkBox = optionTab.CheckBoxControl(AutomationId = '103')
    if checkBox.GetTogglePattern().ToggleState != auto.ToggleState.On:
        checkBox.Click()
    checkBox = optionTab.CheckBoxControl(AutomationId = '104')
    if checkBox.GetTogglePattern().ToggleState != auto.ToggleState.On:
        checkBox.Click()
    optionWindow.TabItemControl(SubName = '布局').Click()
    layoutTab = optionWindow.PaneControl(SubName = '布局')
    layoutTab.EditControl(AutomationId='301').GetValuePattern().SetValue('300')
    layoutTab.EditControl(AutomationId='303').GetValuePattern().SetValue('3000')
    layoutTab.EditControl(AutomationId='305').GetValuePattern().SetValue('140')
    layoutTab.EditControl(AutomationId='307').GetValuePattern().SetValue('30')
    optionWindow.ButtonControl(AutomationId = '1').Click()
    cmdWindow.SetActive()
    rect = cmdWindow.BoundingRectangle
    auto.DragDrop(rect.left + 50, rect.top + 10, 50, 30)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('我将运行<Color=Cyan>记事本</Color>并输入<Color=Cyan>Hello!!!</Color>\n\n')
    time.sleep(3)

    subprocess.Popen('notepad')
    notepadWindow = auto.WindowControl(searchDepth = 1, ClassName = 'Notepad')
    cx, cy = auto.GetScreenSize()
    notepadWindow.MoveWindow(cx // 2, 20, cx // 2, cy // 2)
    time.sleep(0.5)
    notepadWindow.EditControl().SendKeys('Hello!!!', 0.05)
    time.sleep(1)

    dir = os.path.dirname(__file__)
    scriptPath = os.path.abspath(os.path.join(dir, '..\\automation.py'))

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py -h</Color>"显示帮助\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -h'.format(scriptPath) + '{Enter}', 0.05)
    time.sleep(3)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py -r -d1</Color>"显示所有顶层窗口, 即桌面的子窗口\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -r -d1 -t0'.format(scriptPath) + '{Enter}', 0.05)
    time.sleep(3)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py -c</Color>"显示鼠标光标下的控件\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -c -t3'.format(scriptPath) + '{Enter}', 0.05)
    notepadWindow.SetActive()
    notepadWindow.MoveCursorToMyCenter()
    time.sleep(3)
    cmdWindow.SetActive(waitTime = 2)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py -a</Color>"显示鼠标光标下的控件和它的所有父控件\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -a -t3'.format(scriptPath) + '{Enter}', 0.05)
    notepadWindow.SetActive()
    notepadWindow.MoveCursorToMyCenter()
    time.sleep(3)
    cmdWindow.SetActive(waitTime = 2)

    thisWindow.SetActive()
    auto.Logger.ColorfullyWrite('运行"<Color=Cyan>automation.py</Color>"显示当前激活窗口和它的所有子控件\n\n')
    time.sleep(3)

    cmdWindow.SendKeys('"{}" -t3'.format(scriptPath) + '{Enter}', 0.05)
    notepadWindow.SetActive()
    notepadWindow.EditControl().Click()
    time.sleep(3)
    cmdWindow.SetActive(waitTime = 2)
    time.sleep(3)

    thisWindow.SetActive()
    auto.Logger.WriteLine('演示结束，按Enter退出', auto.ConsoleColor.Green)
    input()
def DemoCN ( ) : thisWindow = auto . GetConsoleWindow ( ) auto . Logger . ColorfullyWrite ( '我将运行<Color=Cyan>cmd</Color>并设置它的<Color=Cyan>屏幕缓冲区</Color>使<Color=Cyan>cmd</Color>一行能容纳很多字符\n\n') time . sleep ( 3 ) auto . SendKeys ( '{Win}r' ) while not isinstance ( auto . GetFocusedControl ( ) , auto . EditControl ) : time . sleep ( 1 ) auto . SendKeys ( 'cmd{Enter}' ) cmdWindow = auto . WindowControl ( RegexName = '.+cmd.exe' ) cmdWindow . TitleBarControl ( ) . RightClick ( ) auto . SendKey ( auto . Keys . VK_P ) optionWindow = cmdWindow . WindowControl ( SubName = '属性') optionWindow . TabItemControl ( SubName = '选项').Cl i c k() optionTab = optionWindow . PaneControl ( SubName = '选项') checkBox = optionTab . CheckBoxControl ( AutomationId = '103' ) if checkBox . GetTogglePattern ( ) . ToggleState != auto . ToggleState . On : checkBox . Click ( ) checkBox = optionTab . CheckBoxControl ( AutomationId = '104' ) if checkBox . GetTogglePattern ( ) . ToggleState != auto . ToggleState . On : checkBox . Click ( ) optionWindow . TabItemControl ( SubName = '布局').Cl i c k() layoutTab = optionWindow . PaneControl ( SubName = '布局') layoutTab . EditControl ( AutomationId = '301' ) . GetValuePattern ( ) . SetValue ( '300' ) layoutTab . EditControl ( AutomationId = '303' ) . GetValuePattern ( ) . SetValue ( '3000' ) layoutTab . EditControl ( AutomationId = '305' ) . GetValuePattern ( ) . SetValue ( '140' ) layoutTab . EditControl ( AutomationId = '307' ) . GetValuePattern ( ) . SetValue ( '30' ) optionWindow . ButtonControl ( AutomationId = '1' ) . Click ( ) cmdWindow . SetActive ( ) rect = cmdWindow . BoundingRectangle auto . DragDrop ( rect . left + 50 , rect . top + 10 , 50 , 30 ) thisWindow . SetActive ( ) auto . Logger . ColorfullyWrite ( '我将运行<Color=Cyan>记事本</Color>并输入<Color=Cyan>Hello!!!</Color>\n\n') time . sleep ( 3 ) subprocess . Popen ( 'notepad' ) notepadWindow = auto . WindowControl ( searchDepth = 1 , ClassName = 'Notepad' ) cx , cy = auto . GetScreenSize ( ) notepadWindow . MoveWindow ( cx // 2 , 20 , cx // 2 , cy // 2 ) time . sleep ( 0.5 ) notepadWindow . EditControl ( ) . SendKeys ( 'Hello!!!' , 0.05 ) time . sleep ( 1 ) dir = os . path . dirname ( __file__ ) scriptPath = os . path . abspath ( os . path . join ( dir , '..\\automation.py' ) ) thisWindow . SetActive ( ) auto . Logger . ColorfullyWrite ( '运行"<Color=Cyan>automation.py -h</Color>"显示帮助\n\n') time . sleep ( 3 ) cmdWindow . SendKeys ( '"{}" -h' . format ( scriptPath ) + '{Enter}' , 0.05 ) time . sleep ( 3 ) thisWindow . SetActive ( ) auto . Logger . ColorfullyWrite ( '运行"<Color=Cyan>automation.py -r -d1</Color>"显示所有顶层窗口, 即桌面的子窗口\n\n') time . sleep ( 3 ) cmdWindow . SendKeys ( '"{}" -r -d1 -t0' . format ( scriptPath ) + '{Enter}' , 0.05 ) time . sleep ( 3 ) thisWindow . SetActive ( ) auto . Logger . ColorfullyWrite ( '运行"<Color=Cyan>automation.py -c</Color>"显示鼠标光标下的控件\n\n') time . sleep ( 3 ) cmdWindow . SendKeys ( '"{}" -c -t3' . format ( scriptPath ) + '{Enter}' , 0.05 ) notepadWindow . SetActive ( ) notepadWindow . MoveCursorToMyCenter ( ) time . sleep ( 3 ) cmdWindow . SetActive ( waitTime = 2 ) thisWindow . SetActive ( ) auto . Logger . ColorfullyWrite ( '运行"<Color=Cyan>automation.py -a</Color>"显示鼠标光标下的控件和它的所有父控件\n\n') time . sleep ( 3 ) cmdWindow . SendKeys ( '"{}" -a -t3' . format ( scriptPath ) + '{Enter}' , 0.05 ) notepadWindow . SetActive ( ) notepadWindow . MoveCursorToMyCenter ( ) time . sleep ( 3 ) cmdWindow . SetActive ( waitTime = 2 ) thisWindow . SetActive ( ) auto . Logger . ColorfullyWrite ( '运行"<Color=Cyan>automation.py</Color>"显示当前激活窗口和它的所有子控件\n\n') time . sleep ( 3 ) cmdWindow . SendKeys ( '"{}" -t3' . format ( scriptPath ) + '{Enter}' , 0.05 ) notepadWindow . SetActive ( ) notepadWindow . EditControl ( ) . Click ( ) time . sleep ( 3 ) cmdWindow . SetActive ( waitTime = 2 ) time . sleep ( 3 ) thisWindow . SetActive ( ) auto . Logger . WriteLine ( '演示结束，按Enter退出', auto.ConsoleCo l r.Gr e en) input ( )
for Chinese language
for Chinese language