Как максимизировать экран из VBScript? - PullRequest
0 голосов
/ 19 декабря 2018

Веб-приложение, отображающее информацию о базе данных, гораздо удобнее для чтения в полноэкранном режиме, чем в небольшом окне.Проблема в том, что я не могу получить окно для максимизации из UFT / QTP.

Я попытался запустить объект браузера из Wscript.Shell, но приложение возвращается в UFT и максимизирует это окно вместо вновь созданного браузера.window.

siteA = "https://google.com"
Const max_window = 3
Set browobj = CreateObject("Wscript.Shell")
Set oShell = CreateObject("WScript.Shell")
'browobj.Run "chrome -k -incognito -url "&siteA
browobj.Run "chrome -incognito -url "&siteA, max_window
oShell.SendKeys "% x"
browobj.sendkeys "{F9}"
browobj.sendkeys "(% )X"
browobj.SendKeys "% x"

Set browobj = Nothing

Какие-либо решения для максимизации окна с объектом фокуса нового браузера?

Редактировать:

Даже ниже не будетувеличить, взятый из этого Список элементов управления не работает.

SystemUtil.Run "chrome.exe" , siteA ,,,3 
chrome.exe  --incognito --start-maximized

Если вы отключите все экземпляры Chrome, эти элементы управления будут работать нормально, но если у вас будет активное окно в Chrome, оно будет работатьвзять эти свойства.

1 Ответ

0 голосов
/ 20 декабря 2018

У нас есть функция, определенная в процессе входа в наш браузер, которая захватывает окно и максимизирует его, чтобы наши процессы UFT работали с (почти) полноэкранным браузером - нам не нужно скрывать строку меню и т. Д. ЭтоИспользуемая нами функция:

Public Function MISC_MaximiseBrowser(ByVal oBrowser, ByRef ErrorMsg)
    LOG_Write vbNewLine & "MISC_MaximiseBrowser"
    LOG_Write "oBrowser: " & oBrowser.GetROProperty("TestObjectName")

    Dim Hwnd
    dim bIsMax, bIsMaxable

    MISC_MaximiseBrowser = True

    Hwnd = oBrowser.Object.HWND

    If Window("hwnd:=" & Hwnd).GetROProperty("maximized") Then
        bIsMax = True
    Else
        bIsMax = False
    End If

    If Window("hwnd:=" & Hwnd).GetROProperty("maximizable") Then
      bIsMaxable = True
    Else
      bIsMaxable = False
    End If

    If Not bIsMax And bIsMaxable Then
        Window("hwnd:=" & Hwnd).Maximize
    End If

End Function

Для этого он принимает объект Browser UFT, с которым вы работаете, и захватывает для него дескриптор.Если браузер еще не развернут и его можно развернуть, он сделает это.

Вы можете игнорировать операторы LOG_Write в начале функции - это для наших внутренних шагов регистрации

...