Microsoft KB Archive/114185

{| = Creating Hot Keys for Objects Other Than Push Buttons =
 * width="100%"|

ID: Q114185

2.5x 2.6x | 2.5x 2.6x | 2.5x 2.6x

WINDOWS  | MS-DOS    | MACINTOSH kbtool kbprg The information in this article applies to:


 * Microsoft FoxPro for Windows, versions 2.5x, 2.6x
 * Microsoft FoxPro for MS-DOS, versions 2.5x, 2.6x
 * Microsoft FoxPro for Macintosh, versions 2.5x, 2.6a

SUMMARY
In the Screen Builder, hot keys (also known as access keys) can be assigned to push buttons. However, the Screen Builder does not provide a built-in process for assigning hot keys to other screen GET objects, such as fields, popups, list boxes, and so on.

The information below describes how to create hot keys for GET objects other than push buttons by using the ON KEY LABEL statement, the _CUROBJ system variable, and the OBJNUM function.

NOTE: In Visual FoxPro for Windows, use the ActiveControl form property instead of _CUROBJ and OBJNUM.

Overview
1. Use the Line Drawing tool to simulate the underline of a character (the

underline font style is not supported in the Screen Builder). Select the  Line Drawing tool from the toolbox. Place a short line under the letter   in the field description that will be used in the hot key. 2. In the SETUP snippet of the screen, place an ON KEY LABEL    _curobj = OBJNUM(object) command. This commmand instructs FoxPro to jump   to the object when the hot key is pressed. 3. Place a POP KEY command in the CLEANUP code of screen to clear the ON   KEY LABEL commands.

Example Using \TUTORIAL\CUSTOMER.DBF
1. Assuming FoxPro is installed in a directory named FOXPROW on drive C, type the following commands in the Command window:

USE C:\FOXPROW\TUTORIAL\CUSTOMER CREATE SCREEN test

2. From the Screen menu, choose Quick Screen.

3. In the Quick Screen dialog box, choose Fields.

4. Move the CNO and COMPANY fields to the Selected Fields list box. Choose OK twice to return to the Screen Design window.

5. Select the Line Drawing tool from the toolbox. Place a line under the letter "C" of the text object "Cno," which is located to the left of the GET field for CNO. (In FoxPro for MS-DOS, choose Box   from the Screen menu. Size the box so that it appears as a line.)

6. Select the Line Drawing tool again. Place a line under the letter "o" of the text object "Company," which is located to the left of   the GET field for COMPANY. (In FoxPro for MS-DOS, choose Box from   the Screen menu. Size the box so that it appears as a line.)

7. From the Screen menu, choose Layout.

8. Under Options, choose Code. (In FoxPro for MS-DOS, do not select   anything--go directly to the next step.)

9. Under Screen Code and Clauses, choose Screen Setup Code, and then choose Cleanup and Procedures. Choose OK twice. (In FoxPro for MS-   DOS, under Screen Code, choose Setup. Then choose Cleanup and    Procedures. Choose OK once.) 10. In the Setup snippet window, type the following: ON KEY LABEL ALT+C _curobj = OBJNUM(CUSTOMER.CNO) ON KEY LABEL ALT+O _curobj = OBJNUM(CUSTOMER.COMPANY) 11. Close the Setup snippet window, saving changes. 12. In the Cleanup snippet window, type the following:

POP KEY && Clear all ON KEY LABEL statements ON KEY LABEL F1 HELP && Restore F1 to Help 13. Close the Setup snippet window, saving changes. 14. From the Program menu, choose Generate.

15. When prompted to save changes to the screen, choose Yes.

16. When prompted to save environment information, choose Yes.

17. In the Generate Screen dialog box, choose Generate.

18. Close the Screen Design window.

19. In the Command window, type "DO test.spr" (without the quotation

marks). Press ALT+O. Note that this selects the COMPANY GET field. Now press ALT+C. This selects the CNO GET field. For additional information on creating hot keys in Visual FoxPro, please see the following article(s) in the Microsoft Knowledge Base:

ARTICLE-ID:Q128752 TITLE    :How to Use Hot Keys in Visual FoxPro Additional reference words: FoxMac FoxDos FoxWin 2.50 2.50a 2.50b 2.50c 2.60 2.60a hotkey hotkeys short cut shortcut KBCategory: kbtool kbprg KBSubcategory: FxtoolSbuilder Keywords         : FxtoolSbuilder Version          : 2.5x 2.6x | 2.5x 2.6x | 2.5x 2.6 Platform         : MACINTOSH MS-DOS WINDOWS
 * }