Доброго времени суток
Я теперь научился кликать по кнопке "Очистить историю", спасибо, - если данное окно уже открыто.
И хотя это у меня получается, но если предварительно попробовать вызвать, необходимое окно настроек "Очистки истории" то код перестаёт работать :(
Хотя по отдельности каждый из участков кода - нормально работают
Что конфликтует и что этом случае предпринять, подскажите пожалуйста.
Добавлено:
Ой сори - просто не закрыл скобку в названии библиотеки
Но появилась другая ошибка: в результате окно настроек истории открывается , а клика по кнопке "Очистить историю" нет :stars:
Добавлено:
Поторопился, Вы чуть раньше разместили полный код, что позволяет избежать ошибки ops:
Вот как
Пожалуй возникает только 1 вопрос, связанный с кликом по выпадающему списку: чтобы выбрать период очистки. inspect - не хочет корректно название отражать. Потому не понятно как кликнуть, как выбрать...
Я теперь научился кликать по кнопке "Очистить историю", спасибо, - если данное окно уже открыто.
Код:
#include <GUIConstantsEx.au3>
Opt("WinTitleMatchMode", 2)
$hWnd = WinWait(" - Google Chrome", "", 3)
If Not $hWnd Then Exit ConsoleWrite("!> Окно браузера не найдено" & @CRLF)
$oParent = _UIA_GetElementFromHandle($hWnd)
$oElement = _UIA_GetControlTypeElement($oParent, "UIA_ButtonControlTypeId", "Очистить историю")
_UIA_ElementMouseClick($oElement)
И хотя это у меня получается, но если предварительно попробовать вызвать, необходимое окно настроек "Очистки истории" то код перестаёт работать :(
Код:
#include <GUIConstantsEx.au3>
Opt("WinTitleMatchMode", 2)
;~ пробую активировать окно Google Chrome
WinActivate(" - Google Chrome")
;~ и открыть предварительно Окно настройки "Очистка истрии"
Send("+^{DEL}")
Sleep(1000)
$hWnd = WinWait(" - Google Chrome", "", 3)
If Not $hWnd Then Exit ConsoleWrite("!> Окно браузера не найдено" & @CRLF)
$oParent = _UIA_GetElementFromHandle($hWnd)
$oElement = _UIA_GetControlTypeElement($oParent, "UIA_ButtonControlTypeId", "Очистить историю")
_UIA_ElementMouseClick($oElement)
Хотя по отдельности каждый из участков кода - нормально работают
Код:
;~ пробую активировать окно Google Chrome
WinActivate(" - Google Chrome")
;~ и открыть предварительно Окно настройки "Очистка истории"
Send("+^{DEL}")
Sleep(1000)
Что конфликтует и что этом случае предпринять, подскажите пожалуйста.
Добавлено:
Сообщение автоматически объединено:
Ой сори - просто не закрыл скобку в названии библиотеки
Но появилась другая ошибка: в результате окно настроек истории открывается , а клика по кнопке "Очистить историю" нет :stars:
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <StaticConstants.au3>
#include <WinAPISys.au3>
Opt("WinTitleMatchMode", 2)
;~ пробую активировать окно Google Chrome
WinActivate(" - Google Chrome")
;~ и открыть предварительно Окно настройки "Очистка истрии"
Send("+^{DEL}")
Sleep(5000)
$hWnd = WinWait(" - Google Chrome", "", 3)
If Not $hWnd Then Exit ConsoleWrite("!> Окно браузера не найдено" & @CRLF)
$oParent = _UIA_GetElementFromHandle($hWnd)
$oElement = _UIA_GetControlTypeElement($oParent, "UIA_ButtonControlTypeId", "Очистить историю")
_UIA_ElementMouseClick($oElement)
Добавлено:
Сообщение автоматически объединено:
Поторопился, Вы чуть раньше разместили полный код, что позволяет избежать ошибки ops:
Вот как
Код:
#include "UIAutomate.au3"
Opt("WinTitleMatchMode", 2)
$hWnd = WinActivate(" - Google Chrome")
;~ If Not $hWnd Then Exit ConsoleWrite("!> Окно браузера не найдено" & @CRLF)
;~ пробую активировать окно Google Chrome
WinActivate(" - Google Chrome")
;~ и открыть предварительно Окно настройки "Очистка истрии"
Send("+^{DEL}")
Sleep(5000)
$oParent = _UIA_GetElementFromHandle($hWnd) ; родитель
$oElement = _UIA_GetControlTypeElement($oParent, "UIA_ButtonControlTypeId", "Очистить историю") ; элемент
$aRect = _UIA_ElementGetBoundingRectangle($oElement) ; экранные координаты элемента
If IsArray($aRect) Then
$iX = ($aRect[2] - $aRect[0]) / 2 ; середина ширины элемента
$iY = ($aRect[3] - $aRect[1]) / 2 ; середина высоты элемента
MouseMove($aRect[0] + $iX, $aRect[1] + $iY, 0) ; смещение мыши в середину элемента с учётом левого верхнего угла элемента
;~ Send("{SHIFTDOWN}") ; нажатие Shift
MouseClick("left") ; клик в текущие координаты курсора
;~ Send("{SHIFTUP}") ; отпускание Shift
EndIf
Sleep(1000)
MsgBox(0, "Сообщение","История очищена")
Пожалуй возникает только 1 вопрос, связанный с кликом по выпадающему списку: чтобы выбрать период очистки. inspect - не хочет корректно название отражать. Потому не понятно как кликнуть, как выбрать...