Hi Chip,

Thanks for sharing your insights on reclassing.  I doubt that I will find any 
more than you have on the subject.  If I do, I definitely will share.

Ken

From: Chip Orange [mailto:[email protected]]
Sent: Sunday, October 09, 2011 2:14 PM
To: [email protected]
Subject: RE: Three Issues/Questions for Scripting Window-Eyes with Microsoft 
Access 2010 Database Program

Hi Ken,

I haven't found much of anything to study on reclassing, please let me know if 
you do!

What I was trying to say is that here's my understanding of what's going on:

If you come across a control which WE describes as a custom control, this means 
it's likely to not know how to read it or what to do with it.  I believe it 
gets it's info on the type of the control from the window.type property of the 
control (each control usually has it's own window object, which is not at all 
the same as the main application window (usually)).

So, if you find out this custom control is really an editbox say, you can 
interactively indicate this to WE, and it will make note of this in a special 
file with a .we extension; every time it finds this control, it will treat it 
as an editbox from then on because of this entry in the .we file.

You can do the same thing in your app by finding the correct window object for 
the control, and setting the type property to be the constant for the editbox 
type.  Since you haven't created any .we file for window-eyes to use, and since 
GW hasn't told us how to create such .we files (officially), it's best if you 
make this assignment to the control's window object's type property, in your 
app, each time your app runs, rather than trying to create a .we file for the 
control which shows it being reclassed.  when you do this, you are causing WE 
to then treat this control as an editbox; if you find out later this isn't the 
best thing to do, you don't have to undo any .we file you may have created on 
your pc (or the pc of others), you can simply stop making this assignment.

As far as I know, this is the best way to handle reclassing controls in an app. 
 We'll see if it draws a correction from anyone.

hth,

Chip



________________________________
From: Scott, Ken [mailto:[email protected]]
Sent: Friday, October 07, 2011 3:29 PM
To: '[email protected]'
Subject: RE: Three Issues/Questions for Scripting Window-Eyes with Microsoft 
Access 2010 Database Program
Chip,

Thanks for the feedback.  I think I am missing something about reclasses so I 
will go back and study some more.

Ken


From: Chip Orange [mailto:[email protected]]
Sent: Thursday, October 06, 2011 7:07 PM
To: [email protected]
Subject: RE: Three Issues/Questions for Scripting Window-Eyes with Microsoft 
Access 2010 Database Program

Hi Scott,

reclassing a control when you do it manually using Window-Eyes keyboard 
commands allows it to be permanently reclassed.  When you do this in a script, 
it's not permanent, so your script has to do this each time it runs.

All you have to do is to set the window type of the control's window object 
(each control has it's own window)  to be whatever type you think it really is. 
 there's a list of predefined constants for each of the window types (one for 
each control type).  so, you'd just find the correct window of the control, and 
then you'd have a command like:

myWindow.type = wtEditbox

Which sets it to be an edit box.

hth,

Chip


________________________________
From: Scott, Ken [mailto:[email protected]]
Sent: Wednesday, October 05, 2011 1:10 PM
To: '[email protected]'
Subject: Three Issues/Questions for Scripting Window-Eyes with Microsoft Access 
2010 Database Program
Hi gw-scripting list members,

I am attempting to improve the usability of the Microsoft Access 2010 database 
program with Window-Eyes.  I am not a programmer of any kind let alone an 
object oriented one.  I have done some analysis of the Access 2010 and 
Window-Eyes combination.  I also listened to all of the podcasts and read all 
of the documentation that I thought applied to what I am trying to do.  I am 
left with three issues/questions.

One thing that I am trying to do is to automatically maximized the Access 2010 
windows.  The problem is that I am getting two object.classnames for what 
appear to be the same object depending on what analytical tool or approach that 
I use.  If I use, Gw Micro's Window Manager to check on classnames for objects, 
I get one result.  If I use the Object Browser in Chip Orange's Microsoft Word 
based development environment, I get another Classname.  For example, in Window 
Manager there is a OTable classname, whereas, in the Object Browser, there is a 
table classname.  Can anyone suggest which version of the object classname that 
I should try first when scripting to maximize the windows?

The second problem that I am having is determining the syntax to load set files 
based on off screen events.  I plan to use the presence of Access window 
objects plus view button status to load set files.  My first issue.  What is 
the property/method to load a specified set file?  I did write GW Micro Support 
asking about this situation.  I was told about the window.loadset object.  
Unfortunately when I check the Window-Eyes developer reference, this object 
appears to tell if a set file is loaded and not to load a set file.  Second, 
what is the syntax for using an accessible string as part of an operation.  I 
can find a long string that gives the name of a view button and its pressed 
verses unpressed status in my analysis.  I do not know how to write this into 
an operation.  My tentative idea for a syntax is something like:
If window.classname = OTable and Datasheet view status = pressed then 
loadset.TableDatasheetView.
If anyone can suggest how precisely the above hypothetical operation should be 
written I will be forever in your debt.

The third area of trouble is in reclassing a custom control.  If I understood 
the Window-Eyes developer reference correctly, I need to use the type object to 
reclass the object.  I will need to first use the retrieve property to place 
the custom control into my script.  I then need to use the set property plus 
the type to reclass the custom control.  If the custom control is okttbx and 
need to be reclassed to an editbox, what would these operations look like?

If I have confused you, please send me any follow up questions that you have.

Regards,
Ken Scott




Reply via email to