显示数据库信息的Web应用程序在全屏模式下而不是小窗口下更具可读性。问题是,我无法从UFT / QTP获得最大化的窗口。
我尝试从Wscript.Shell运行浏览器对象,但是应用程序返回UFT并最大化该窗口,而不是新创建的浏览器窗口。
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
有什么解决方案可以最大化新浏览器的焦点对象窗口?
编辑:
即使此List of Controls不起作用,即使在下面也无法最大化使用。
SystemUtil.Run "chrome.exe" , siteA ,,,3
chrome.exe --incognito --start-maximized
如果您关闭所有chrome实例,则这些控件可以正常工作,但是如果您在chrome中有一个活动窗口,它将获得这些属性。
答案 0 :(得分:0)
我们在浏览器登录过程中定义了一个函数,该函数可以捕获窗口并将其最大化,因此我们的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
语句-这些语句用于我们的内部记录步骤