나열된 모든 옵션을 시도했지만 흰색을 사용하여 창 컨트롤에서 리본을 찾을 수 없습니다. VisualUIAVerify가 트리로 표시합니다.WinForms UI 자동화 : VisualUIAVerify에서 Ribon을 찾을 수 없음
"window" "Test 0.0.1" "MainForm"
|--"pane" "Dock Top" "_MainForm_Toolbars_Dock_Area_Top"
|--"" "Ribbon" ""
|--"tab" "Ribbon Tabs" ""
|--"tab item" "Tools" ""
"도구"탭 항목을 클릭하고 싶습니다. 만에 "창"
import clr
import sys
sys.path.append(r"C:\TEMP\white")
clr.AddReference("White.Core")
clr.AddReference("White.NUnit")
from White.NUnit import *
from White import *
from White.Core import *
from White.Core.Configuration import *
from White.Core.UIItems import *
from White.Core.UIItems.WindowItems import *
from White.Core.UIItems.ListBoxItems import *
from White.Core.UIItems.Container import *
from White.Core.UIItems.Finders import *
from White.Core.Factory import *
from White.Core.Finder import *
from White.Core.AutomationElementSearch import *
from White.Core.WindowsAPI import *
from System.Diagnostics import Process
wp= Process();
wp.StartInfo.FileName = r"c:\TEMP\gui\TestShell.exe";
wp.StartInfo.Arguments = r"TestShell.taco -e DBA -s qa";
wp.Start();
wapp = Application.Attach(wp);
wnds=Application.GetWindows(wapp)
wnd=wnds[0]
#test
>wnd.Name
"Test 0.0.1"
을 찾을 수 있습니다 심지어 클릭 수 탭 도구를 제공 좌표 (IronPython의).
def click(cp,mouse,x,y):
cp = wnd.Bounds.TopLeft;
cp.Offset(x, y);
mouse = Desktop.Instance.Mouse;
mouse.Location = cp;
mouse.Click(cp);
cp = wnd.Bounds.TopLeft;
mouse = Desktop.Instance.Mouse;
mouse.Location = cp;
mouse.Click(cp);
click(cp,mouse,120,50) #tools
구획에 도착 :
pn=wnd.GetElement(SearchCriteria.ByAutomationId("_MainForm_Toolbars_Dock_Area_Top"));
모든 어린이
pn.FindAll(TreeScope.Children, Condition.TrueCondition)
아무것도 작동하는 것 같다을 리본을
rbn=pn.GetElement(SearchCriteria.ByAutomationId("Ribbon"));
를 찾거나 찾을 매는. 당신이보고있는