MadGrb
5 years agoContributor
TestComplete cannot find nested Popup menu, In neste popup menu.
Hi,
I have massive Problem with nested popup menu.
In my case, are two popup menu but TC can find just first one and ignore second one.
Look at Photo 1.jpg and 2.jpg, 3.jpg that show us there is a Object from Class BarButtonItemLinkControl. But when I'm Looking for this object in my Code, I find she is not Exist.
Photo 4.jpg, 5.jpg.
How can solve this Problem.
Finally I write a script to Click on nested Menu that is not recognized with TC-Engine.
def SelectContextMenueStrip(cls, Contain_0 = '', Contain_1 = ''): try: Index_0 = 0 Index_1 = 0 Delay(50) ContextMenuStrip = Aliases.JTL_Wawi.ContextMenuStrip Height = ContextMenuStrip.Height Width = ContextMenuStrip.Width Count = ContextMenuStrip.get_Items().Count IndividualHeight = Height / Count for Index_0 in range(0,Count,1): Item = ContextMenuStrip.GetItemAt(Width/2, IndividualHeight * Index_0 ) if Item != None: if ContextMenuStrip.GetItemAt(Width/2, IndividualHeight * Index_0 ).Text.OleValue == Contain_0: ContextMenuStrip.Click(Width/2, IndividualHeight * Index_0) if Contain_1 != '': ContextMenuStrip_1 = Aliases.JTL_Wawi.ContextMenuStrip.activeDropDowns_2.Item[0] Height_1 = ContextMenuStrip_1.Height Width_1 = ContextMenuStrip_1.Width Count_1 = ContextMenuStrip_1.get_Items().Count IndividualHeight_1 = Height_1 / Count_1 for Index_1 in range(0,Count_1,1): Item_1 = ContextMenuStrip_1.GetItemAt(Width_1/2, IndividualHeight_1 * Index_1 ) if Item_1 != None: if ContextMenuStrip_1.GetItemAt(Width_1/2, IndividualHeight_1 * Index_1 ).Text.OleValue == Contain_1: MouseX = ContextMenuStrip_1.Left MouseY = ContextMenuStrip_1.Top Sys.Desktop.MouseDown(VK_LBUTTON , MouseX + Width_1/2, MouseY + IndividualHeight_1 * Index_1) Sys.Desktop.MouseUp(VK_LBUTTON , MouseX + Width_1/2, MouseY + IndividualHeight_1 * Index_1) Index_1 += 1 Index_0 += 1 except Exception as exp: Log.Message('SelectContextMenueStrip - type:' + str(exp))
I use mouse position to click on desktop, Enjoy it 😉