Hi Ken, Yes, I think you're right, and you'll find it easier going if you look at scripting a solution involving the use of MSAA and window events. You won't know until you try, but just trying will give you the experience to tackle something else later on; so it's worth doing, even if GW enhances their app. And if they don't, because of other workload issues, then it will be quite useful to you and others; so either way, it looks like a good idea. So far I'm planning the MSAA class, and one showing how to write XML dialogs, going into details for each kind of control. (much more details than the first class). if anyone would rather these be a TeamTalk interactive class, please drop me a line at [email protected], otherwise I'll make them podcasts. thanks. Chip
_____ From: Scott, Ken [mailto:[email protected]] Sent: Monday, October 10, 2011 5:32 PM To: '[email protected]' Subject: RE: loading a set file; was Scott's question Hi Chip, A poor choice of words on my part. Prior to MS Access 2003, Jeff Pledger (I hope that I spelt his name correctly) had several sets of set files for several versions of MS Access. There were something like two dozen set files for each version of Access. The need for so many set files that needed to be loaded and reloaded with the associated need to find events to hook to is more correctly thought of as a challenge rather than a problem. After reviewing class 18 again and the gennerlly improve Access 2010 accessibility, I am thinking that I should look more deeply into MSAA use in Access 2010 . MSAA might allow me to eliminate or to reduce both reclassing and number of set files required. Thank you for all of your insights. I am now reconsidering my entire approach to developing an app for Access 2010. Aaron did say that GW Micro is working on revising their MSAccess app to among other things work better with Access 2010. I may not need to develop an app at all if they get to it soon enough. Ken s From: Chip Orange [mailto:[email protected]] Sent: Sunday, October 09, 2011 2:23 PM To: [email protected] Subject: RE: loading a set file; was Scott's question Hi Ken, I'm not sure what you mean about the reloading of a .set file has been a problem in MS Access for years? You can get around this, if you need to, by replacing the access .set file with your own, or by hooking the event which tells you when a set file is loaded, and then reloading yours if it's the right window. Mostly though, others make changes in their apps to the individual settings of the current set file, and set the scope of these changes to be local so they don't accidentally end up being saved as part of the default global .set file if the user should save a change. There was a scripting class which covered the scope feature of settings in a set file which should help you do this. just like the loading of a set file though, you'd have to hook the event which tells you when a set file is being loaded, so you can make these changes again if it's the right window to do so. Or I guess you could save the .set file after you make your changes once (I haven't looked into whether that's possible or not to do). hth, Chip _____ From: Scott, Ken [mailto:[email protected]] Sent: Friday, October 07, 2011 2:31 PM To: '[email protected]' Subject: RE: loading a set file; was Scott's question Chip, Thanks again. I did check the developers reference but missed the section that you noted. I think that the overlap or top level requirement is going to kill my original idea. I am aware of the multiple loading of the same set situation. This has been a problem in MSAccess for years. Ken From: Chip Orange [mailto:[email protected]] Sent: Thursday, October 06, 2011 6:50 PM To: [email protected] Subject: loading a set file; was Scott's question Hi again Scott, check the developer's reference manual, in the window object, in it's methods, and you'll find a method named LoadSet which loads a set file. It says it's only usable for overlap (or top level application windows), so it may not work for your situation; and if the window becomes inactive (say, a user changes windows for a minute), then your set file won't be loaded when they return to the window, so you'll need to load the set file each time this window becomes active. 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
