Is there a way to click on a link without specifying the entire path e.g not having to specify Cell(2,0) or Panel (9) See below script:
w1.Frame("Menu").Table("menutable").Cell(2, 0).Panel("menucontent").Panel(9).Link("menuitem_us erManagement").Click();
The problem is that these values are changing from application to application, I tried Namemapping but it does not recognize the link if I try to change the Panel(9) to Panel(*)
Sure there is. Use the Find methods that are available to you. So if on of the properties of the link is unique (for instance Link("menuitem_userManagement")) then yo should be able to use FindChild or Find on the w1 process indicated, and have itreturn the object you're looking for.
Thanks for the advice it works, but it seems like it makes my script much slower because it goes through the entire tree to find my link. Is there a way to access the object quickly? I have to do this eveywhere
There are a couple things you can do to speed this up. Obviously searching right from the root is a little slower. Just like you search on the Process, though, you can also search on the child objects of the root process, so if you have a more suitable starting point, perform the find against that object instead and it should be faster. Also, you can try limiting the search depth. The combination of both of these will help. Now if you can get the search depth to 1 or 2 then you should be laughing.
Not sure. I only ever used tools hwere it was really difficult to find objects [img]/images/graemlins/smile.gif[/img]
I'm assuming that something is changing, something within the object path is changing when you open it. If you figure out what that is, you probably can map to it using the name mapping feature because you should just be able to use wildcards in the path to get rid of the unique items. So if it's an ID, and that ID is propagated on load and in order of load, then it could be different every time, unless you punch in a wildcard in that spot.