Microsoft KB Archive/108682: Difference between revisions
From BetaArchive Wiki
m (Text replacement - ">" to ">") |
m (Text replacement - "&" to "&") |
||
Line 35: | Line 35: | ||
ENDIF | ENDIF | ||
DEFINE WINDOW w1 FROM 1,1 TO 19,65 TITLE 'Record view' & | DEFINE WINDOW w1 FROM 1,1 TO 19,65 TITLE 'Record view' && main window | ||
*Now duplicate the main window and create a browse in it: | *Now duplicate the main window and create a browse in it: | ||
DEFINE WINDOW w2 FROM 1,1 TO 19,65 & | DEFINE WINDOW w2 FROM 1,1 TO 19,65 && browse window | ||
BROW IN WINDOW w2 TITLE 'Records' ; | BROW IN WINDOW w2 TITLE 'Records' ; | ||
FIELDS cno :v=vcno() :F, company, contact, address, ; | FIELDS cno :v=vcno() :F, company, contact, address, ; | ||
Line 47: | Line 47: | ||
ACTIVATE WINDOW w1 TOP | ACTIVATE WINDOW w1 TOP | ||
ON KEY LABEL f2 DO switch & | ON KEY LABEL f2 DO switch && sets up window switching | ||
ON KEY LABEL esc DO bye | ON KEY LABEL esc DO bye | ||
Line 95: | Line 95: | ||
********************************************************** | ********************************************************** | ||
FUNCTION vcno & | FUNCTION vcno && valid for field CNO in both screen and browse | ||
********************************************************** | ********************************************************** | ||
IF ! LEN(ALLTRIM(cno)) > 1 | IF ! LEN(ALLTRIM(cno)) > 1 |
Latest revision as of 12:24, 21 July 2020
Switching Between a Screen and Browse Using a Single KeyID: Q108682 2.50 2.50a 2.50b | 2.00 2.50 2.50a 2.50b WINDOWS | MS-DOS The information in this article applies to:
SUMMARYSome database managers can switch between a single-record screen and a browse-like screen with one keystroke acting as a toggle between the two. Although FoxPro does not have this capability built in, you can simulate this feature programmatically, as demonstrated below. MORE INFORMATIONThe program below is provided as an example of using a single key to switch between a data entry screen and a Browse window in FoxPro.
IF USED("customer") SELECT customer ELSE IF FILE("CUSTOMER.DBF") SELECT 0 USE customer.dbf ELSE WAIT WINDOW "NO DATABASE" RETURN ENDIF ENDIF DEFINE WINDOW w1 FROM 1,1 TO 19,65 TITLE 'Record view' && main window *Now duplicate the main window and create a browse in it: DEFINE WINDOW w2 FROM 1,1 TO 19,65 && browse window BROW IN WINDOW w2 TITLE 'Records' ; FIELDS cno :v=vcno() :F, company, contact, address, ; city, state, zip, phone ; NOWAIT ACTIVATE WINDOW w2 NOSHOW ZOOM WINDOW records MAX ACTIVATE WINDOW w1 TOP ON KEY LABEL f2 DO switch && sets up window switching ON KEY LABEL esc DO bye @ 1,22 SAY "Cno" @ 1,27 GET cno SIZE 1.000,7.600 VALID vcno() @ 3,2 SAY "Company" @ 3,14 GET company SIZE 1.000,32.000 @ 5,2 SAY "Contact" @ 5,14 GET contact SIZE 1.000,31.600 @ 7,2 SAY "Address" @ 7,14 GET address SIZE 1.000,47.600 @ 9,2 SAY "City" @ 9,14 GET city SIZE 1.000,23.600 @ 11,2 SAY "State" @ 11,14 GET state SIZE 1.000,2.800 @ 13,2 SAY "Zip" @ 13,14 GET zip SIZE 1.000,7.600 @ 15,2 SAY "Phone" @ 15,14 GET phone SIZE 1.000,31.600 READ CYCLE ********************************************************** * Closing code ********************************************************** RELEASE WINDOW w1 RELEASE WINDOW w2 ON KEY LABEL f2 ********************************************************** PROCEDURE switch ********************************************************** IF WVISIBLE("w1") HIDE WINDOW w1 SHOW WINDOW w2 ELSE HIDE WINDOW w2 SHOW WINDOW w1 SHOW GETS ENDIF ********************************************************** PROCEDURE bye ********************************************************** ON KEY LABEL esc ACTIVATE WINDOW w1 TOP CLEAR READ ********************************************************** FUNCTION vcno && valid for field CNO in both screen and browse ********************************************************** IF ! LEN(ALLTRIM(cno)) > 1 RETURN .F. ELSE RETURN .T. ENDIF Additional reference words: FoxDos FoxWin 2.00 2.50 2.50a 2.50b on key label KBCategory: KBSubcategory: FxprgBrowse Keywords : kbcode FxprgBrowse Version : 2.50 2.50a 2.50b | 2.00 2.50 2.5 Platform : MS-DOS WINDOWS |
Last Reviewed: May 22, 1998 |