[jawsscripts] Re: FindWindowWithClassAndId FSDN confusion?

  • From: "Travis Roth" <travis@xxxxxxxxxxxxxx>
  • To: <jawsscripts@xxxxxxxxxxxxx>
  • Date: Tue, 1 Jun 2010 21:40:01 -0500

It'd appear that FindWindowWithClassAndID() would be for when controls may
not be unique, but they are consistent, such as #5 is always of type edit,
or whatnot.
It sounds like one of the other find functions may be more helpful for you
such as FindWindow() or FindWindowByType().

-----Original Message-----
From: jawsscripts-bounce@xxxxxxxxxxxxx
[mailto:jawsscripts-bounce@xxxxxxxxxxxxx] On Behalf Of Geoff Chapman
Sent: Tuesday, June 01, 2010 9:23 PM
To: jawsscripts@xxxxxxxxxxxxx
Subject: [jawsscripts] FindWindowWithClassAndId FSDN confusion?

frequently occurring ID of late.  I do apologize for this. It's just that I
have sooo much to learn!!! and, my brain and retention ability is really
very tiny!
<groan.>

today, I wish to ask about a function as per subject line.
As you'd all be aware, many windows one often wishes to locate these days,
no longer have unique unchanging control ID's, where one can employ nice
easy functions like FindDescendantWindow and the like, inputting controlID
absolutes in their parameters, to locate such windows.

I have such an application here that I'm scripting right now.
Although every control and area does appear to have it's own separate window
in the hierarchy, the control ID's seem constantly equal to the handles of
the window, which, I presume, would change every time the app was opened, so
these become useless for absolute and reliable location of a given window,
utilizing any functions that require these to be constant. correct?

Thus, I needed some kind of other control/method of doing this, and I've
heard spoken of up here, a function as per subject line, called
FindWindowWithClassAndId.

So I went looking for it in fsdn, hoping to learn how to utilize this to
locate a window of interest.
I admit I haven't gotten my hands/brain  dirty yet with absolutely trying to
implement this, but, already the fsn reference theory  on it has me stumped.
and I prefer not to even start trying to get tooo dirty with stuff, until at
least I have some theoretical idea, of what it is that I, should, be able to
achieve if/when I do?

So, here's my question:
in the fsdn reference to this function,
(the whole thing is pasted unadulterated below, but, in short, in the
description it says:
Quote, 'this function is useful when control IDs are not unique in an
application and you need to find a child window with a given control ID and
class name.' unquote.

gc:  ok great! that's what I wanna do!

but, then in the params list, it gleefully indicates, that controlID is
required!

I'm obviously missing something big time here, but, how can the function
claim on the one hand to be useful in locating windows without unique
controlID's, and then ask you to enter an absolute controlID  as one of it's
parameters?

Any clarification most greatfully recieved.

Thanks so much.


entire fsdn function pasted below for those interested:


Function: FindWindowWithClassAndId 
Description 

this function is useful when control IDs are not unique in an application
and you need to find a child window with a given control ID and class name. 

Returns 

Type: handle
Description: the handle of the window if found, NULL otherwise

Parameters 
Param 1: 

Type: handle
Description: starting handle
Include: Required

Param 2: 

Type: string
Description: the class name
Include: Required

Param 3: 

Type: int
Description: the control ID of the child
Include: Required

Version 

This function is available in the following releases: 

list of 2 items
1. JAWS 6.10 and later 
2. Magic 10.5 and later 
list end

__________�

View the list's information and change your settings at 
//www.freelists.org/list/jawsscripts


__________�

View the list's information and change your settings at 
//www.freelists.org/list/jawsscripts

Other related posts: