Software Disability Access List Archive

About enhanced JFW compatibility with Access 97

Posted by: Jamal Mazrui
Date Mailed: Sunday, December 13th 1998 12:05 PM

Thought this may be of interest,
Jamal

----------
From the web page 
http://www.hj.com/JFW/Scripts/MSAccessScript.html

          Microsoft Access 97 Script Documentation for
          JAWS for Windows 3.20.X

          By Joseph Dunn
          August 26, 1998

          This page contains the documentation for the
          JAWs for Windows Microsoft Access 97
          Scripts. 

            * General Notes
            * JAWS Hotkeys
            * Features and Supported Screens
            * Wizards
            * Design Views
            * JAWS Help
            * Known Problems
            * Notes to Database Designers and
              Application Programmers
            * Special Thanks

          General Notes

          These scripts have been written and tested
          using JAWS for Windows version 3.20.09 and
          Microsoft Access 97. Some of the features
          listed below may work in earlier versions of
          Access but features relying on the exposed
          object model of Access 97 will not work in
          prior versions of Access.

          JAWS Hotkeys

          The following Hotkeys have been defined in
          these scripts. For further information about
          the scripts themselves, see the following
          sections:

          Insert+f1 gives Screen Sensitive Help in
          most areas including the Wizard and Design
          View screens. This keystroke will also give
          you valuable information about the field you
          are in when entering data into a table. The
          information includes the field name, data
          type, size in characters, ordinal position,
          total number of fields and whether data in
          this field is required or optional. In
          verbosity levels higher than beginner, this
          information is trimmed down but still
          includes the vital information.

          Insert+h lists hotkeys which may be used in
          certain contexts, including any hotkeys
          defined on forms or subforms to access
          controls such as checkboxes etc, immediately.

          Control+shift+d speaks a summary of the open
          database including the name and number of
          objects defined by the user. Objects include
          tables, queries, modules, relationships,
          forms etc.

          Control+shift+t speaks a summary of the
          table currently displayed including the
          name, data type, size and total number of
          fields.

          Insert+tab says the control with focus.

          Control+shift+f reads the active form and
          any subforms in control order. This order
          depends on how the programmer designed the
          form.

          Control+shift+b allows you to select a
          toolbox control to place on a form or report
          in design view.

          Control+shift+r reads the active report.

          Control+shift+l lists all of the controls on
          the current form and allows you to select a
          control and set focus on it provided it can
          receive the focus. If you select a subform
          control then a further list will allow you
          to select a subform control.

          Control+shift+c is used to create a
          relationship by pressing the keystroke once
          on the source field in the source table and
          then again on the destination field of the
          destination table. You can press
          control+insert+c after the first press of
          control+shift+c to clear the relationship
          setup process. This function only works in
          the Relationships screen accessed from the
          tools menu and is subject to the normal
          Access 97 constraints.

          Control+shift+s will tell you if the field
          you are on in the listbox of fields for a
          given table participates in a relationship
          or not. Again, this keystroke only works in
          the Relationships screen accessed from the
          Tools Menu. For example, in the Northwind
          database which comes with Microsoft Access
          97, in the relationships screen, pressing
          control+shift+s when the Supplier ID field
          is selected in the supplier table, JFW will
          tell you that this field is referenced by
          the Products table. Similarly, if the
          Product ID field in the products table is
          selected, pressing control+shift+s causes
          JFW to tell you that Product ID is
          referenced by the Order Details table.
          Pressing control+shift+s when the product ID
          field is selected in the Order Details table
          causes JFW to say that Product ID references
          the product table. So, JFW will tell you
          when a field references or is referenced by
          another table. If the User Verbosity is set
          to anything higher than beginner, a trimmed
          down version of the same information is
          spoken but the table name containing the
          selected field is left out, assumed to be
          known by the user.

          Control+shift+j is used to create a join in
          the Query Design View Grid by pressing the
          keystroke once on the source field and then
          again on the destination field. You can
          press control+insert+c after the first press
          of control+shift+j to clear the join setup
          process. This function only works in the
          Query Design View Grid and is subject to the
          normal Access 97 constraints.

          Insert+f8 toggles Label Search on and off.
          See note 3 in the section entitled "Notes
          for Database Designers and Application
          Programmers,", for further explanation.

          Insert+delete reads the status line (if any
          text is displayed there), coordinates of the
          focused field in a Datasheet, or helpful
          wizard text (if in the Wizard screens) is
          spoken.

          Control+shift+w reads any wizard text
          displayed.

          Insert+f7 repeats the spell checker dialog.

          Insert+control+down arrow reads the current
          screen.

          Control+shift+v says the version of Access
          you are running.

          Features and Supported Screens

          The following screens are all supported in
          this release of the scripts:

            * Database Wizard
            * Table design view
            * Table Datasheet View
            * Table Wizard
            * Relationships Screen
            * Query Design View
            * Simple Query Wizard
            * Crosstab Query Wizard
            * Form Wizard
            * Form Design View
            * Reading of forms, subforms, reports and
              subreports
            * Report Wizard
            * Report Design View
            * Macro creation screen
            * Spell Checker

          The next sections contain information
          specifically for the screens supported.

          Wizards

          All of the wizards in the standard
          installation of Microsoft Access 97 are
          supported.

          When you select a wizard, the control with
          focus will be spoken. To hear any
          descriptive text or questions related to the
          controls on a wizard screen, either use
          control+shift+w, control+shift+f,
          Insert+delete or Insert+f1. The differences
          between these keys is discussed below:

          Control+shift+w just reads the text on the
          wizard form not associated with any other
          controls;

          Control+shift+f reads the wizard text
          followed by all the controls on the form, in
          the control order;

          Insert+delete is a general keystroke which
          gives relevant information such as
          statusline text, datasheet coordinates and
          in wizards, the wizard text;

          Insert+f1 is screen sensitive help and in
          the wizards, it tells you which wizard you
          are in and the descriptive text for the
          current screen.

          After making the necessary selections or
          responses on each wizard screen, press Alt+n
          to proceed to the next screen or Alt+b to
          backtrack one screen. Press Alt+f to finish
          or Escape to exit the wizard without
          creating anything.

          Design Views

          Most of the design views are supported by
          JFW in this release. Here are some notes to
          help you with specific screens:

               Table Design View

               The Table Design View has two
               panels, the top panel allows you
               to specify the field name, data
               type and size of each field in
               your table. The second panel
               allows you to set properties for
               the selected field in the top
               panel.

               You will not be able to switch
               panels until you have defined at
               least one field. Use f6 to switch
               between the field definition panel
               and the field properties multipage
               dialog. As you press the tab key,
               JFW will announce the prompt and
               setting in both panels and display
               this information on your Braille
               Display.

               To exit the Table Design View,
               press control+f4.

               Query Design View

               Before the actual Query Design
               View is displayed, a dialog
               appears which enables you to
               choose the tables and fields you
               want listed in the Design View to
               work with. Select these items
               using the add button and then
               press the close button to get to
               the actual Design View.

               This Design View also consists of
               two panels. The top panel contains
               listboxes of the items just
               selected in the previous step
               while the second panel contains a
               grid with headings down the left
               hand side.

               Use f6 to switch between these
               panels and ensure the application
               is maximized (Alt+minus followed
               by x) so that field names are
               spoken as you move from grid row
               to grid row.

               To select a field and/or table
               from the lists in the top panel,
               use your arrow keys and press
               Enter on the item you want placed
               on the grid. JFW will announce
               that it is placing the item on the
               grid.

               If somehow your cursor gets stuck
               outside the grid in no-mans-land,
               place the JAWS cursor back in
               either the grid or lists and click
               the left mouse button.

               (The ability to select an item
               with the Enter key is a feature of
               these scripts as Microsoft did not
               see fit to implement this and thus
               forces the sighted person to drag
               and drop onto the grid.)

               Control+shift+j is used to create
               a join in the Query Design View
               Grid by pressing the keystroke
               once on the source field and then
               again on the destination field.
               You can press control+insert+c
               after the first press of
               control+shift+j to clear the join
               setup process. This function only
               works in the Query Design View
               Grid and is subject to the normal
               Access 97 constraints.

               To exit this screen, press
               control+f4.

               Form and Report Design Views

               The Form and Report design views
               are only partially accessible.
               When you invoke these screens you
               can tab from section to section
               and press Enter to open the
               properties multipage dialog for
               the selected section. Once in the
               properties (section) dialog, you
               can set the properties by tabbing
               within each page or using
               control+tab to move from page to
               page. Press Alt+f4 to close this
               dialog and return to the top
               panel. Press control+f4 to close
               the top panel and return to the
               database window.

               (Again, the ability to press Enter
               on an item to bring up its
               properties (section) dialog is a
               feature of the scripts as
               Microsoft did not implement this.)

               The toolbox is now also
               accessible. When you press
               control+shift+b, a list of the
               controls available in the standard
               toolbox will be presented. When
               you select one of these controls
               by pressing Enter, you will then
               be permitted to select the parent
               control if appropriate (if there
               are any controls to choose from).

               Controls which may have their
               parent property set include:
               labels, checkboxes, option buttons
               )otherwise known as radio buttons)
               and toggle buttons.

               The control will then be created
               in the chosen section on the form
               or report with the parent property
               set to the specified control.

               You can then set the properties
               for this control by focusing on
               the Object Combo on the Format
               (Form/Report) toolbar. To ensure
               this toolbar is visible, check it
               in the View/Toolbars menu. Once
               the toolbar is visible, you can
               get to it by pressing Alt to
               activate the Menu bar and then by
               pressing Control+tab until the
               Object Combo is announced.

               Once you have focused on the
               Object Combo, choose the control
               you want to set properties for and
               press Enter, then choose
               Properties from the View Menu.

               To return to the Section selector,
               choose the section from the Object
               Combo and press Enter.

               An Example follows:

               To create a textbox on a form with
               a label of My Box, do the
               following:

               From the Database Window, press
               Control+tab until the Forms page
               is in focus.

               Press the New button and choose
               Design View.

               Tab until you hear Detail.

               Press Control+shift+b and choose
               Edit.

               Since there is no controls on the
               form, and because text boxes do
               not need to have their parent
               property set, you will not be
               asked to choose the parent
               control. Instead, a message will
               be spoken telling you that the
               control has been created.

               Press Control+shift+b again and
               choose Label (the first option).

               Now JFW will ask you to choose the
               parent. So, choose Text0 (or
               whatever the textbox was called in
               the previous announcement.

               Once you have chosen the parent,
               this control will be added to the
               form.

               Now you must set the labelis
               caption property and to do this,
               you need to get to the Object
               Combo on the Format (Form/Report)
               toolbar.

               If this toolbar is already
               visible, skip to 12.

               To ensure this toolbar is visible,
               choose it from the View/Toolbars
               menu.

               Press Alt, release it, then press
               Control+tab and you will be placed
               on the first visible toolbar. If
               JFW does not say something like
               Object Combo, Detail, press
               control+tab until it does.

               Now choose the label control you
               just created, it will probably be
               called something like Label0
               (press enter).

               Choose Properties from the View
               Menu and set its Caption Property
               to My Box.

               Now, to test it out, close the
               properties sheet with alt+f4 and
               then close the form Design View
               with Control+f4.

               Now open the form by Pressing the
               Open button and you will land on
               the Edit field and JFW will
               announce "My box." To repeat it,
               press Insert+tab.

               This is the end of the example.

               Macro Creation Screen

               If you select New to create a new
               macro, you will be placed in the
               Action column of the design grid.
               You can tab to the comment column
               and press f6 to switch to the
               properties multipage dialog.

               Press Control+f4 to close this
               screen.

          JAWS Help

          You can get help with using JAWS with Access
          97 at any time by using any of the following
          keys:

          Insert+f1 will speak screen sensitive help;

          Insert+h will tell you about any hotkeys
          relevant to that screen;

          Insert+f1 twice quickly will bring up this
          document.

          Known Problems

          You must maximize the screen in order for
          prompts to be spoken in Table design view
          grid.

          Wizard text from the parent form is still
          spoken even when a subform has appeared with
          possibly more text. This subforms text is
          spoken after the main forms text. Though JFW
          cannot see the main form text, it is
          sometimes still visible according to the
          object model.

          When an option Group (groupbox) is displayed
          on the Braille display, you cannot use
          routing buttons to access the group objects.
          this is because JFW cannot know where to
          click. In fact, even when speaking the group
          box, its objects never get the focus with
          the tab key as stated in the VBA
          documentation. You must use the select
          control list or a hotkey (if there is one)
          to select controls within a group box.

          The Insert+v, control+shift+l and
          control+shift+b scripts occasionally fail
          due to an unknown JFW problem whereby the
          dialog will instantaneously appear and
          disappear without allowing the user to make
          a selection.

          You cannot select controls on a SubSubForm
          using control+shift+l.

          When trying to focus on a control within an
          Option Group and its state is spoken (using
          control+shift+l dialog), the state may be
          inaccurate. To hear the correct state, focus
          on the group box (option group) itself and
          press Insert+tab to hear the correct state.

          Braille tracking sometimes lags behind the
          speech. To correct this, you can Alt+tab
          away from and back to the application.

          If the table or database summary keys seem
          to give information which is not up-to-date,
          eg it speaks the name of a table which you
          have already deleted, it may be necessary to
          shutdown and restart Microsoft Access 97.

          If you get the message that a control was
          not created when trying to add controls to a
          form or report in Design View using the
          control+shift+b script, it may be that the
          parent control cannot accommodate child
          controls until you adjust the size
          properties. You may get this message when
          trying to add controls to a Group Box
          (option Group).

          The advanced wizards which may be installed
          for Microsoft Access 97 have not been
          directly supported in this release of the
          scripts but they are quite useable anyway.
          You may find though that some of the
          control's labels are not located correctly
          but an experienced user will certainly
          manage. Just remember to use the help
          facilities built-in to these scripts,
          control+shift+w, insert+f1 insert+h and
          insert+delete.

          Occasionally when you try to perform a join
          with control+shift+j or create a
          relationship with Control+shift+c, it will
          appear that JFW has locked up. To escape
          this bind, just move your physical mouse a
          twich and speech will resume.

          Sometimes control+shift+r does not read the
          whole active report. This is a quirk with
          Microsoft Access's underlying object model
          not being updated. The best way to get
          around this problem is to export the report
          as HTML and read it in your Web Browsing
          software.

          Notes to Database Designers and Application
          Programmers

          A more standard method of associating labels
          with their controls on a form has been used
          in this version of the scripts. To ensure
          that JFW will correctly identify a control's
          label, use one of the following methods:

          1. Set the control's caption property to the
          text describing the control;

          2. Set the control's ToolTipText property to
          the text describing the control;

          If you create a separate label control for
          another control, set its parent property to
          point to the control it is labeling. JAWS
          will look at the parent's name property and
          match it with the control's name property
          for which the label is associated. If Label
          Search is off, only the first two methods
          will be used to determine a control's label,
          otherwise, JAWS will look at each control on
          the form whose ControlType property is not
          AcLabel and see if the label's parent's name
          matches that control's name. If it does then
          the label control's caption is used as the
          label for the control.

          Please note also that the Speak Database
          Summary script ignores objects whose names
          either start with Msys or which contain a ~
          Tilde character as these are objects
          maintained by Microsoft Access 97 and not
          visible to the user. Please do not name user
          objects in this way or JFW will ignore them
          when this script is invoked.

          Special Thanks

          I would like to thank Jeff Bishop for his
          hundreds of hours testing of this, most
          complex scripting project so far. His
          intimate knowledge of Microsoft Access 97
          and Visual Basic for Applications was
          extremely useful in conquering this
          inaccessible and unfriendly beast.

          I would also like to thank Mike Pedersen of
          Henter-Joyce for the many hours of
          consultation time and for the privilege
          granted me to tackle such a mammoth task.

          I would like to thank my dear wife Florence
          for putting up with me during the
          development time, for which I literally
          lived and breathed Access and VBA.

          I would finally like to thank my Lord Jesus
          Christ who has endowed me with the ability
          to program. I am eternally grateful!

----------
End of Document


-- 
TNET Mail to News Gateway
For information about this gateway, email info@tnet.com
Dimenet Network Page Generation Copyright (c) 2004-2005 DIMENET and TNET Services, Inc.
Module: archive.php - Version: 2.50 - Build: July 24 2004 15:33:40 MST
Valid HTML 4.01!   Valid CSS!