home *** CD-ROM | disk | FTP | other *** search
- * -------------------------------------------------------- *
- * D_MENU.PRG *
- * Demo der Möglichkeiten der Menütechnik in dBase IV *
- * (c) 1989 E.Schubert & TOOLBOX *
- * -------------------------------------------------------- *
- * Die erste Option des Zeilenmenüs "HAUPT" aktiviert sofort
- * POPUP-Menü "FIRST".
- * Dieses Menü listet alle verfügbaren *.dbf - Dateien auf
- * und bietet die Möglichkeit, eine Datenbank auszuwählen.
- * Wird die Wahl durch <RETURN> bestätigt, wird die gewählte
- * Datenbank geöffnet, das POPUP-Menü "SECOND" listet die
- * verfügbaren Felder der aktuellen Datenbank auf. Nach
- * Auswahl eines Feldes listet das POPUP-Menü "THIRD" alle
- * Werte des gewählten Feldes auf. *
- * Die zweite Option des Hauptmenüs dient nur zur Kontrolle
- * der gewählten Werte - an dieser Stelle sind der Phantasie
- * keine Grenzen gesetzt, wie die Variablen
- * db_val = gewählte Datenbank
- * feld_val = gewähltes Feld
- * wert_val = gewählter Wert
- * in Anwendungsprogrammen sinnvoll eingebunden werden können
- * -------------------------------------------------------- *
-
- SET SCOREBOARD OFF
- SET STATUS OFF
- SET TALK OFF
- SET MESSAGE TO
- @ 0,0 CLEAR
-
- * Variablen für Auswahl in den folgenden Menüs vorbelegen
- dbval = 'NO_DBank'
- feldval = 'NO_FIELD'
- wertval = 'NO_WERT'
-
- * Zeilenmenü definieren
- DEFINE menu haupt
- DEFINE pad haupt_1 OF haupt PROMPT ;
- "Datenbank auswählen" at 4,2;
- MESSAGE "Auswahl der Datenbank mit " + ;
- "Pfeiltasten, bestätigen mit RETURN"
- DEFINE pad haupt_2 OF haupt PROMPT ;
- "Gewählte Werte anzeigen" at 4,32
- DEFINE pad haupt_3 OF haupt PROMPT "ENDE" AT 4,62
-
- * Cursor auf der Option "Datenbank auswählen" aktiviert
- * sofort das erste POPUP-Menü
- ON pad haupt_1 OF haupt ACTIVATE POPUP first
-
- * im Unterschied dazu muß die Anwahl der zweiten Option
- * mit RETURN bestätigt werden
- ON SELECTION pad haupt_2 OF haupt DO zeigen
-
- * geht sofort zur db-Punkt-Ebene zurück, in Anwendungs-
- * programmen sollte hier besser eine Prozedur stehen, die
- * die SET-Befehle auf die Standardwerte zurücksetzt
- ON SELECTION pad haupt_3 OF haupt RETURN
-
- * erstes POPUP-Menü soll alle Datenbanken auflisten
- DEFINE POPUP first from 6,3 PROMPT FILES LIKE *.dbf
- ON SELECTION POPUP first DO anz
-
- * Hauptmenü aktivieren
- ACTIVATE menu haupt
-
- * EOP d_menu.prg
-
-
- PROCEDURE anz
- * wird bei Auswahl einer Datenbank im 1. POPUP aufgerufen
- dbval = prompt()
- * Funktion prompt() merkt gewählte Option, hier die
- * ausgewählte Datenbank, die mit dem folgenden Befehl
- * geöffnet wird
- use &dbval.
- * das nächste Menü zeigt die Felder der Datenbank
- DEFINE POPUP second FROM 8,20 PROMPT STRUCTURE
- ON SELECTION POPUP second DO anz1
- ACTIVATE POPUP second
- DEACTIVATE POPUP
- RETURN
-
- PROCEDURE anz1
- * wird bei Auswahl eines Feldes im 2. POPUP aufgerufen
- feldval = prompt()
- * feldval nimmt das gewählte Feld auf
- * das nächste Menü listet den Inhalt des angewählten Feldes
- DEFINE POPUP third FROM 10,30 PROMPT FIELD &feldval.
- ON SELECTION POPUP third DO ende
- ACTIVATE POPUP third
- DEACTIVATE POPUP
- RETURN
-
- PROCEDURE ende
- * wird bei Auswahl eines Feldinhaltes im dritten
- * POPUP - Menü aufgerufen
- wertval = prompt()
- DEACTIVATE POPUP
- RETURN
-
- PROCEDURE zeigen
- * wird bei Auswahl der Option " Gewählte Werte anzeigen"
- * im Hauptmenü aktiviert dient hier nur zur Demonstration
- * und zur Kontrolle der Auswahl
- @ 5,0 clear
- ? "Gewählte Datenbank : " + dbval
- ? "Gewähltes Feld : " + feldval
- ? "Gewählter Wert : " + wertval
- RETURN
-
- * -------------------------------------------------------- *
- * Ende von D_MENU.PRG *