Sign in to follow this  
Followers 0
FineD

why cannot capture objects in a listbox

4 posts in this topic

Hi, All,

I plan to use AutoIt to operate our program, deatiled steps as below:

1) On main UI, it has a tab control, and there are two sub tabs ebedied.

2) On each tab, there is a listbox.

3) my purpose: use AutoIt to click the record in the listbox.

My Question:

Q1: I can get the handle of listbox, it's detailed info as below:

>>>> Control <<<<

Class: SysListView32

Instance: 2

ClassnameNN: SysListView322

ID:

Text:

Position: 5, 81

Size: 302, 260

ControlClick Coords: 57, 137

Style: 0x50000605

ExStyle: 0x00000000

But I cannot get any items in this listbox, I tried the command:

$Cnt = _Listbox_GetCount($hList)

It return "0". Seems there is not any items in this listbox. I tried to use "AutoIt Window Info" to retrieve items in the listbox, but I get nothing.

Q2: for the Tab, I can get it's handle, but cannot do any operation on it, such as: click one tab.

BTW: our company has a set of UI Lib, it is common in all programs. Per the help file, it seems that AutoIt just support Windows Standard control. I am not who can give me some suggestion how to finish this operation?

Q3: in our program, for the historical reason, we have some non-standard control enevloped by AutoIt. Seems AutoIt can do nothing for these control except using mouse operations. I hope we can enhance such feature to grasp/identify all controls in memory within on Program. NOT just cover standard controls. If so, AutoIt's usage will be rich, we can introduce it into Auto Testiong area.

Thanks/FineD

Share this post


Link to post
Share on other sites



Well, first, your ClassNN is SysListView322, which means if you were to use (for example, this won't work now, but IE):

$appTitle = "My Application!"
$appText = "Welcome to my application!"

ControlSend($appTitle, $appText, SysListView322, "I'm sending it this text")

; This is the same as the line just above
ControlSend($appTitle, $appText, "[CLASSNN: SysListView322]", "I'm sending it this text")oÝ÷ ØçÜ¢êì{*.q©àzÛaz§vW¨~ØZµúèØ^
V¬°Ób*.Â+!o+¬x¢{k¢Q´v§vW±ú%,jëh×6ControlGetHandle ($appTitle, $appText, SysListView322)

Share this post


Link to post
Share on other sites

Since I cannot edit without it showing up as garbage, here is the remaining answers to your questions:

2: Have you been trying ControlClick? If that isn't working, I'm out of the game on this one.

3: If you want, you can try requesting that feature, but I'm certain it's been requested many times and it most likely is very difficult to accomplish, so you will likely get a response of, "It's been tried, and we are working on it" or "I'm sorry, but at this time, it's not in development."

Share this post


Link to post
Share on other sites

SysListView32 is a ListView not a ListBox, look at the GuiListView Management UDFs in the latest beta.


SciTE for AutoItDirections for Submitting Standard UDFs

 

Don't argue with an idiot; people watching may not be able to tell the difference.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0