Здравствуйте.
Нашел на форуме скрипт реагирования - на определенное положение бегунка прокрутки в определенном файле программы Эксель.
Пытался переделать этот скрипт, чтобы он работал в определенном документе Word.
Что-то не получается (видимо UDF Excel.au3 и Word.au3 сильно отличаются).
Название файла 154.doc
Бегунок имеет название Class: ScrollBar, Instance: 1
А вот так выглядят мои наработки (которые не хотят работать)
Подскажите - как выдавать сообщения (аналогичным с экселевским образцом способом) - при положении бегунка прокрутки 50% в файле 154.doc ?
Нашел на форуме скрипт реагирования - на определенное положение бегунка прокрутки в определенном файле программы Эксель.
Пытался переделать этот скрипт, чтобы он работал в определенном документе Word.
Что-то не получается (видимо UDF Excel.au3 и Word.au3 сильно отличаются).
Название файла 154.doc
Бегунок имеет название Class: ScrollBar, Instance: 1
Код:
#include <UIAutomate.au3> ; http://autoit-script.ru/index.php/topic,16780.0.html
#include <Excel.au3>
$sFilePath = @ScriptDir & "\111.xls"
$oExcel = _Excel_Open()
$oBook = _Excel_BookOpen($oExcel, $sFilePath)
If @error Then Exit MsgBox(0, "", "Ошибка открытия файла")
$oParent = _UIA_GetElementFromHandle(ControlGetHandle("[class:XLMAIN]", "", "NetUIHWND4"))
If @error Then Exit MsgBox(0, "", "Не найден элемент прокрутки")
$oScrollBar = _UIA_GetControlTypeElement($oParent, "UIA_ScrollBarControlTypeId", "")
If @error Then Exit MsgBox(0, "", "Не найдена вертикальная прокрутка")
While Sleep(111)
$iValue = _UIA_ElementGetPropertyValue($oScrollBar, "LegacyIAccessible.Value")
ToolTip($iValue)
If $iValue = 50 Then
MsgBox(0, "", "Сообщение", 1)
While Sleep(111)
$iValue = _UIA_ElementGetPropertyValue($oScrollBar, "LegacyIAccessible.Value")
ToolTip($iValue)
If $iValue <> 50 Then ExitLoop
WEnd
EndIf
WEnd
А вот так выглядят мои наработки (которые не хотят работать)
Код:
#include <UIAutomate.au3> ; http://autoit-script.ru/index.php/topic,16780.0.html
#include <Word.au3>
$sFilePath = @ScriptDir & "\154.doc"
$oWord = _Word_Open()
$oBook = _Word_DocOpen($oWord, $sFilePath)
If @error Then Exit MsgBox(0, "", "Ошибка открытия файла")
$oParent = _UIA_GetElementFromHandle(ControlGetHandle("[class:OpusApp]", "", "ScrollBar"))
If @error Then Exit MsgBox(0, "", "Не найден элемент прокрутки")
$oScrollBar = _UIA_GetControlTypeElement($oParent, "UIA_ScrollBarControlTypeId", "")
If @error Then Exit MsgBox(0, "", "Не найдена вертикальная прокрутка")
While Sleep(111)
$iValue = _UIA_ElementGetPropertyValue($oScrollBar, "LegacyIAccessible.Value")
ToolTip($iValue)
If $iValue = 50 Then
MsgBox(0, "", "Сообщение", 1)
While Sleep(111)
$iValue = _UIA_ElementGetPropertyValue($oScrollBar, "LegacyIAccessible.Value")
ToolTip($iValue)
If $iValue <> 50 Then ExitLoop
WEnd
EndIf
WEnd
Подскажите - как выдавать сообщения (аналогичным с экселевским образцом способом) - при положении бегунка прокрутки 50% в файле 154.doc ?