RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 1155627
Accepted
timob256
timob256
Asked:2020-07-22 00:08:07 +0000 UTC2020-07-22 00:08:07 +0000 UTC 2020-07-22 00:08:07 +0000 UTC

不适用于 ControlSend

  • 772

我正在尝试在记事本++中使用 autoit 输入字符串

这是记事本++的工作领域

记事本++工作区

这是代码

; Запуск блокнота только так вызывается
Run('C:\kononov\Notepad++\notepad++.exe')

; Ожидание 5 секунд до появление окна блокнота  и проверка 
$hWnd = WinWait("[CLASS:Notepad++]", "", 5)
If Not $hWnd Then
    MsgBox(4096, 'Сообщение', 'Окно не найдено, завершаем работу скрипта')
    Exit
EndIf

;ControlClick(handle, button1);
; проверка открития 
$hWnd1  =   WinGetHandle($hWnd, "[CLASS:ToolbarWindow32; INSTANCE:1]")
If Not $hWnd1 Then
    MsgBox(4096, 'Сообщение', 'Строчка окна не найдена,WinGetHandle, завершаем работу скрипта')
    Exit
EndIf

; нажатие клавиши  и проверка , нажатие клавиши "новый "
$hWnd3  =ControlClick($hWnd, "", "[CLASS:ToolbarWindow32]", "Left", 1,11, 12)
If Not $hWnd3 Then
    MsgBox(4096, 'Сообщение', 'Строчка не отработала, ControlClick, завершаем работу скрипта')
    Exit
EndIf

; нажатие клавиши и проверка , нажатие на рабочей поверхности
$hWnd4  =ControlClick($hWnd, "", "[CLASS:SysTabControl32]", "Left", 1,550, 50)
If Not $hWnd4 Then
    MsgBox(4096, 'Сообщение', 'Строчка не отработала, ControlClick, завершаем работу скрипта')
    Exit
EndIf

; Высылает строку символов в элемент увы строуон не реализует 
$hWnd5  = ControlSend("[CLASS:Notepad++]", "Tab", "[CLASS:SysTabControl32]", "This is some text")
Send("asddas") ; вот эту срочку прекрастно отрабатывает  

 ; увы эту строку не отрабатывает , но при это ошибку не выводит     
;$hWnd5 =ControlSend($hWnd, "Tab", "[CLASS:SysTabControl32]", " new 1 ")
If Not $hWnd5 Then
    MsgBox(4096, 'Сообщение', 'Строчка не отработала, ControlSend, завершаем работу скрипта')
    Exit
EndIf

; Закрывает блокнот. ( пока открытым держим )
; WinClose($hWnd)

我可以通过鼠标点击来实现这一点,但是唉,我希望通过类能够检查。

notepad++
  • 1 1 个回答
  • 10 Views

1 个回答

  • Voted
  1. Best Answer
    timob256
    2020-07-24T19:37:50Z2020-07-24T19:37:50Z

    我得到了英文答案:

    所以这是我的实现:

    ; Запуск блокнота только так вызывается
    Run('C:\kononov\Notepad++\notepad++.exe')
    
    ; Ожидание 5 секунд до появление окна блокнота  и проверка 
    $hWnd = WinWait("[CLASS:Notepad++]", "", 5)
    If Not $hWnd Then
        MsgBox(4096, 'Сообщение', 'Окно не найдено, завершаем работу скрипта')
        Exit
    EndIf
    
    ;ControlClick(handle, button1);
    ; проверка открития 
    $hWnd1  =   WinGetHandle($hWnd, "[CLASS:ToolbarWindow32; INSTANCE:1]")
    If Not $hWnd1 Then
        MsgBox(4096, 'Сообщение', 'Строчка окна не найдена,WinGetHandle, завершаем работу скрипта')
        Exit
    EndIf
    
    ; нажатие клавиши  и проверка , нажатие клавиши "новый "
    $hWnd3  =ControlClick($hWnd, "", "[CLASS:ToolbarWindow32]", "Left", 1,11, 12)
    If Not $hWnd3 Then
        MsgBox(4096, 'Сообщение', 'Строчка не отработала, ControlClick, завершаем работу скрипта')
        Exit
    EndIf
    
    ; нажатие клавиши и проверка , нажатие на рабочей поверхности
    $hWnd4  =ControlClick($hWnd, "", "[CLASS:SysTabControl32]", "Left", 1,550, 50)
    If Not $hWnd4 Then
        MsgBox(4096, 'Сообщение', 'Строчка не отработала, ControlClick, завершаем работу скрипта')
        Exit
    EndIf
    
    ; сам текст
    $hWnd5  = ControlSend($hWnd, "", '', 'It works :-) yes')
    If Not $hWnd5 Then
        MsgBox(4096, 'Сообщение', 'Строчка не отработала, ControlSend, завершаем работу скрипта')
        Exit
    EndIf
    Sleep(500)
    ;$hWnd6 = ControlSend($hWnd, "", '', '{Alt}{F4}')
    $hWnd6  = ControlSend($hWnd, "", '', '^!s', 0)
    If Not $hWnd6 Then
        MsgBox(4096, 'Сообщение', 'Строчка не отработала, ControlSend, завершаем работу скрипта')
        Exit
    EndIf
    Sleep(500)
    
    $n = 4
    ;Send('+{TAB ' & $n & '}') ; нажимает четрые  таба (лементы управления)
    $hWnd7  = ControlSend($hWnd, "", '', '+{TAB ' & $n & '}', 0)
    If Not $hWnd7 Then
        MsgBox(4096, 'Сообщение', 'Строчка не отработала, ControlSend, завершаем работу скрипта')
        Exit
    EndIf
    Sleep(500)
    
    $hWnd8  = ControlSend($hWnd, "", '', '{ENTER}', 0)
    If Not $hWnd8 Then
        MsgBox(4096, 'Сообщение', 'Строчка не отработала, ControlSend, завершаем работу скрипта')
        Exit
    EndIf
    
    Sleep(5000)
    ;send('^!s') ; соразмерно контрол альт р
    
    ; Закрывает блокнот. ( пока открытым держим )
    WinClose($hWnd)
    
    • -2

相关问题

  • notepad ++如何在某些行的末尾添加一个字符

  • 如果只有一个字符,如何替换字符串中的文本?

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    如何从列表中打印最大元素(str 类型)的长度?

    • 2 个回答
  • Marko Smith

    如何在 PyQT5 中清除 QFrame 的内容

    • 1 个回答
  • Marko Smith

    如何将具有特定字符的字符串拆分为两个不同的列表?

    • 2 个回答
  • Marko Smith

    导航栏活动元素

    • 1 个回答
  • Marko Smith

    是否可以将文本放入数组中?[关闭]

    • 1 个回答
  • Marko Smith

    如何一次用多个分隔符拆分字符串?

    • 1 个回答
  • Marko Smith

    如何通过 ClassPath 创建 InputStream?

    • 2 个回答
  • Marko Smith

    在一个查询中连接多个表

    • 1 个回答
  • Marko Smith

    对列表列表中的所有值求和

    • 3 个回答
  • Marko Smith

    如何对齐 string.Format 中的列?

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5