Автор Тема: [Сеть, интернет] Как активировать неактивную вкладку Google Chrome?  (Прочитано 6726 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Leanna [?]

  • Новичок
  • *
  • Сообщений: 25
  • Репутация: 3
    • Награды
Подскажите пожалуйста, как активировать вкладку Google Chrome?

Следующий код не работает если окно Chrome имеет много вкладок причем вкладка "Яндекс" не активна
Отрабатывает нормально, если главная вкладка Яндекс открыта, даже если сам хром был на background, т.е. было активно другое приложение.
Код: AutoIt [Выделить]
WinActivate("[TITLE:Яндекс - Google Chrome]")

Можно ли активировать нужную вкладку если она в хроме неактивна?

Может это нужно для информаци.
(нажмите для показа/скрытия)

Русское сообщество AutoIt


Оффлайн Arei [?]

  • Скриптер
  • ****
  • Сообщений: 938
  • Репутация: 115
  • Пол: Мужской
    • Награды

Оффлайн Leanna [?]

  • Новичок
  • *
  • Сообщений: 25

  • Автор темы
  • Репутация: 3
    • Награды
Спасибо. Я читала эту тему и попробовала. У меня не получилось, может я где-то не так делаю?

не работают следующие команды
Код: AutoIt [Выделить]
WinActivate(["CLASS:Chrome_RenderWidgetHostHWND; ID:167554048"])


Код: AutoIt [Выделить]
WinActivate("[REGEXPCLASS:Chrome_WidgetWin_0]")


и на это тоже ничего не происходит
Код: AutoIt [Выделить]
$List = WinList('[CLASS:Chrome_WidgetWin_0]')
For $i = 1 To UBound($List) - 1
    If BitAND(WinGetState($List[$i][1]), 2) Then
        WinActivate($List[$i][1])
        ExitLoop
    EndIf
Next


Помогите пожалуйста, составить пазл правильно.

Русское сообщество AutoIt


Оффлайн rollin [?]

  • Новичок
  • *
  • Сообщений: 15
  • Репутация: 1
    • Награды
Столкнулся с похожей задачей.
Проблему активации вкладки решал перебором всех.
Код: AutoIt [Выделить]
$hChromeWin=""
$int=True
$List = WinList('[REGEXPCLASS:Chrome_WidgetWin_]')
If $List[0][0]=0 Then
    MsgBox(64,Default,"No Chrome windows found!!")
    Exit
EndIf
For $i = 1 To $List[0][0]
    If BitAND(WinGetState($List[$i][1]), 2) Then
        $hChromeWin=$List[$i][1];получаем хендл первого найденого видимого окна   
        ExitLoop
    EndIf
    If $i=$List[0][0] Then;перебрали все окна
        MsgBox(64,Default,"No visible Chrome windows found!!!")
    Exit
    EndIf
Next
$SearchTitle="Яндекс - Google Chrome";название искомой вкладки
WinActivate($hChromeWin)

$firstTabTitle=WinGetTitle($hChromeWin);запоминаем название первой вкладки
If $firstTabTitle=$SearchTitle Then $int=False;если нужная вкладка уже открыта - перебор не выпоняется
While $int
    Send("^{PgUp}")
    $curTitle=WinGetTitle($hChromeWin);заголовок окна хрома соответствует названию активной вкладки
    If $curTitle=$SearchTitle Then;открыта нужная вкладка
        ;проверка на полное совпадение - наверное лучше StringInStr т.к. может быть указано неполное название искомой вкладки
        ExitLoop
    ElseIf $curTitle=$firstTabTitle Then;дошли до начальной вкладки
        MsgBox(64,Default,'Tab "'&$SearchTitle&'" - not found',3)
        ExitLoop
    EndIf
WEnd


Оффлайн IgorFIN [?]

  • Новичок
  • *
  • Сообщений: 4
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Используя UIAutomate.au3 можно примерно так

Код: AutoIt [Выделить]
#include <UIAutomate.au3>
Opt("WinTitleMatchMode", 2)

$hWnd = WinWait("Google Chrome", "", 3)
$oParent = _UIA_GetElementFromHandle($hWnd)
$oElement = _UIA_GetControlTypeElement($oParent, "UIA_TabItemControlTypeId", "Яндекс")
If IsObj($oElement) Then _UIA_ElementMouseClick($oElement)


UIAutomate.au3
http://autoit-script.ru/index.php?topic=16780

Русское сообщество AutoIt


 

Похожие темы

  Тема / Автор Ответов Последний ответ
4 Ответов
4663 Просмотров
Последний ответ Апрель 11, 2014, 18:46:59
от Mazin
9 Ответов
3597 Просмотров
Последний ответ Июль 17, 2016, 18:29:48
от dr.room
1 Ответов
1165 Просмотров
Последний ответ Март 03, 2017, 17:15:50
от Garrett
8 Ответов
1679 Просмотров
Последний ответ Апрель 05, 2018, 15:45:32
от dr.room
0 Ответов
640 Просмотров
Последний ответ Апрель 05, 2018, 16:07:44
от dr.room
2 Ответов
1125 Просмотров
Последний ответ Май 24, 2018, 18:48:05
от kvitnitskiy
0 Ответов
466 Просмотров
Последний ответ Июнь 20, 2018, 15:41:48
от dr.room
3 Ответов
1319 Просмотров
Последний ответ Июнь 27, 2018, 02:01:26
от InnI
7 Ответов
966 Просмотров
Последний ответ Июнь 28, 2018, 13:48:30
от InnI
4 Ответов
1126 Просмотров
Последний ответ Октябрь 16, 2018, 22:32:05
от Visors