Anpassen von IntelliSense mit FoxCode
Sie können die Funktionalität von IntelliSense in Visual FoxPro ändern oder erweitern, indem Sie den Inhalt von FoxCode.dbf ändern. Die Tabelle FoxCode.dbf ist standardmäßig im Windows-Ordner für Benutzeranwendungen installiert.
Anmerkung Wenn Sie Visual FoxPro das erste Mal starten, wird eine Kopie von FoxCode.dbf in den Windows-Ordner für persönliche Anwendungsdaten kopiert. Diese Einstellung können Sie auf der Registerkarte Dateiablage des Dialogfeldes Optionen ändern.
So passen Sie IntelliSense an
- Ändern Sie den Inhalt von FoxCode.dbf, der in der folgenden Tabelle beschrieben wird, entweder direkt oder über das Fenster des Visual FoxPro IntelliSense-Managers.
Struktur von FoxCode.dbf
Feldname | Typ (Größe) | Beschreibung |
---|---|---|
Typ | C (1) | Gibt den Typ des Verweises an, der in diesem Datensatz enthalten ist. |
Abbrev | C (24) | Gibt die Mindestanforderung bezüglich der Tastenanschläge wieder, die IntelliSense für dieses Element auslösen. |
Expanded | C (26) | Gibt den an der Cursorposition einzufügenden Inhalt an. |
Cmd | C (15) | Gibt das Befehlsskript an, das für dieses Element ausgeführt wird. |
Tip | M | Gibt den Inhalt der QuickInfo (die Parameter) an. |
Daten | M | Gibt alle unter Wertliste aufgeführten Werte oder sämtlichen Visual FoxPro-Code an, die bzw. der für dieses Element gilt, und kann optional anderen Skripttext enthalten. |
Case | C (1) | Gibt an, wie der Text ersetzt wird.
U = GROSSBUCHSTABEN Jeder Wert, den Sie in diesem Feld des Versionsdatensatzes angeben, legt einen globalen Standardwert für alle Datensätze fest, die nicht über eine individuelle Einstellung für die Groß- und Kleinschreibung verfügen. |
Save | L | Gibt an, ob der Datensatz gespeichert wird, wenn das Feld aktualisiert wird. |
TimeStamp | T | Stellt den eindeutigen Zeitstempel für dieses Element dar. |
Quelle | M | Gibt die Herkunft des Datensatzinhalts an. Für Inhalte, die im Lieferumfang dieser Version von Visual FoxPro enthalten sind, enthält dieses Feld die Angabe RESERVED. Dieses Feld kann den Pfad und den Dateinamen von Datensätzen enthalten, die vom Benutzer bereitgestellt werden. |
UniqueID | C (10) | Gibt eine eindeutige Kennung für diesen Datensatz an. |
User | M | Gibt Benutzerinformationen an. |
Gültige Werte der Type-Spalte von FoxCode.dbf
Value | Typ | Beschreibung |
---|---|---|
C | Befehl | Gibt den Visual FoxPro-Befehl und Elemente für die automatische Vervollständigung an. |
F | Funktion | Gibt Visual FoxPro-Funktionen an, die in den QuickInfos verwendet werden. |
O | COM-Komponente | Gibt den COM-Typelib-Verweis an, der mit der Dropdownliste der AS-Klausel verwendet werden soll. |
P | Eigenschaft | Gibt Visual FoxPro-Eigenschaften an. |
S | Skript | Gibt an, dass das Datenfeld ein Visual FoxPro-Skript enthält, das ausgeführt werden soll. |
T | Typangabe | Gibt Elemente an, die in der Dropdownliste der AS-Klausel angezeigt werden oder die angezeigt werden, wenn auf sie als Objekt verwiesen wird. |
U | User | Gibt benutzerdefinierte, automatisch erweiterte Elemente an. Diese Elemente müssen im Gegensatz zu Befehlselementtypen keine absolute Musterübereinstimmung aufweisen. |
V | Version | Gibt den speziellen Datensatz für Versionsinformationen an (reserviert). |
COM-Komponente-Elementtyp
Der COM-Komponente-Elementtyp ist ein Datensatz von FoxCode.dbf, dessen Inhalt wie ein Datensatz des Typangabe-Elementtyps in der Dropdownliste einer AS-Klausel angezeigt wird. Der Datensatz des COM-Komponente-Elementtyps stellt den Namen der COM-Typbibliothek dar, die eine Auflistung von Klassen (ProgIDs) enthält, die Visual FoxPro mit Hilfe der CREATEOBJECT( )-Funktion instanziieren kann.
Das Data-Feld dieses Typdatensatzes enthält anstelle von Code die GUID und die Version der Typbibliothek, wie in der folgenden Tabelle gezeigt wird:
Feldname | Beispiel |
---|---|
Typ | O |
Abbrev | Excel |
CMD | {} |
Tip | Microsoft Excel 9.0-Objektbibliothek |
Daten | {00020813-0000-0000-C000-000000000046}#1.3 |
Befehlselementtyp
Der Befehlselementtyp ist ein Datensatz in FoxCode.dbf, dessen Inhalt die Vervollständigungs- oder Ersatzanweisungen für Visual FoxPro-Befehle, wie in der folgenden Tabelle gezeigt, darstellt:
Feldname | Beispiel |
---|---|
Typ | C |
Abbrev | MC |
Expanded | MODIFY COMMAND |
In IntelliSense wird der Inhalt dieser Datensätze aktiviert, indem Sie entweder den Wert des Abbrev-Feldes oder den erweiterten Wert, gefolgt von einem Leerzeichen, im Editor eingeben.
Funktionselementtyp
Der Funktionselementtyp ist ein Datensatz in FoxCode.dbf, dessen Inhalt die Visual FoxPro-Funktionen und -Prozeduren sowie benutzerdefinierte Funktionen, wie in der folgenden Tabelle gezeigt, darstellt:
Feldname | Beispiel |
---|---|
Typ | F |
Abbrev | FCOU |
Expanded | FCOUNT |
Tip | [nWorkArea | cTableAlias] |
Sie können den Inhalt des Tip-Feldes dieser Datensätze in einem Tippfenster anzeigen, indem Sie den Wert des Abbrev-Feldes oder den erweiterten Wert, gefolgt von einer linken Klammer eingeben.
Eigenschaftselementtyp
Der Eigenschaftselementtyp ist ein Datensatz in FoxCode.dbf, dessen Inhalt eine Eigenschaft angibt. Mit Hilfe dieses Typs können Sie beim Zuweisen von Werten zur angegebenen Eigenschaft einen benutzerdefinierten Wert-Editor hinzufügen.
Die folgende Tabelle enthält ein Beispiel für die Angabe von Wert-Editoren für Eigenschaften (Tabelleneinträge des Typs "P"):
Feldname | Beispiel |
---|---|
Typ | P |
Abbrev | .Picture |
Cmd | {picture} |
Das Cmd-Feld enthält den Verweis {picture} auf einen FoxCode-Skriptdatensatz, dessen Abbrev-Feld, den Wert picture enthält (weitere Informationen finden Sie unter "Skriptelementtyp"). Durch die Eingabe von .picture= führen Sie den Code aus, der im Skriptdatensatz enthalten ist, der mit diesem Eigenschaftsdatensatz verbunden ist.
Eine Ausnahme hiervon stellen Datensätze des Typs "T" oder "O" dar, falls das Cmd-Feld nur öffnende und schließende geschweifte Klammern ohne Skriptverweis enthält. In diesem Fall enthält der Datensatz ein eigenes Skript im Data-Feld, wie in der folgenden Tabelle gezeigt wird:
Feldname | Beispiel |
---|---|
Typ | C |
Abbrev | NOW |
Cmd | {} |
Daten | LPARAMETER oFoxCode RETURN TRANSFORM(DATE( )) |
Skriptelementtyp
Der Skriptelementtyp ist ein Datensatz von FoxCode.dbf, dessen Data-Feld Text in Form von Code enthalten kann. Dieser Code wird von einem anderen Datensatz mit Hilfe eines Verweises im Cmd-Feld ausgeführt. Dieser Datensatztyp kann Folgendes enthalten:
FoxCode im Data-Feld, der zu Text ausgewertet wird.
Eine ID im Cmd-Feld, die auf einen anderen Datensatz verweist, der Code enthält. Wenn Sie, wie in der folgenden Tabelle, Code in einem separaten Skriptelementtyp speichern, ermöglichen Sie es, dass mehrere Elemente auf denselben Code verweisen:
{picture}…
Feldname Beispiel Typ S Abbrev Abbildungs-Feld Daten (Im Memo-Feld) LPARAMETER oFoxcode LOCAL lcPicture oFoxcode.valuetype="V" lcPicture = getpict() IF LEN(lcPicture) > 0 lcPicture = ['] + lcPicture+ ['] ENDIF RETURN lcPicture
In diesem Beispiel verweist ein Eigenschaftselementtyp-Datensatz mit dem Wert picture im Abbrev-Feld auf diesen Skriptelementtyp-Datensatz und führt den Code im Data-Feld aus, durch den das Dialogfeld Grafik öffnen angezeigt wird.
Das Skript in Skriptdatensätzen muss eine PARAMETERS- oder LPARAMETERS-Anweisung enthalten, um den Objektverweis aufzunehmen.
Der Rückgabewert ersetzt den eingegebenen Text. Wenn der Rückgabewert zu einer leeren Zeichenfolge ("") ausgewertet wird, behält Visual FoxPro den eingegebenen Text unverändert bei.
Jedes Skript, das von IntelliSense aufgerufen wird, muss einen Parameter enthalten, der an das FoxCode-Parameterobjekt übergeben wird. Dieses Objekt enthält Metadaten, die detailliert aufführen, wie das Skript aufgerufen wurde. Diese Angaben umfassen auch den Quelldatensatz in der FoxCode-Tabelle. Weitere Informationen finden Sie unter FoxCode-Objektverweis.
Typangabe-Elementtyp
Der Typangabe-Elementtyp ist ein Datensatz in FoxCode.dbf, der den Inhalt eines Elements darstellt, der in der Dropdownliste einer AS-Klausel angezeigt wird. Das Data-Feld dieses Datensatzes kann optional Code enthalten, dessen Rückgabewert an der Bildschirmposition des Cursors eingefügt wird. Wenn Sie Text in das Data-Feld einbeziehen, sollten Sie ihn mit einer RETURN-Anweisung beenden.
Feldname | Beispiel |
---|---|
Typ | T |
Abbrev | Befehlsschaltfläche (CommandButton) |
Benutzerelementtyp
Der Benutzerelementtyp ist ein Datensatz in FoxCode.dbf, mit dem, wie in der folgenden Tabelle gezeigt, Abkürzungen für benutzerdefinierte Inhalte angegeben werden können. Im Gegensatz zum Befehlselementtyp muss die Abkürzung des Benutzerelementtyps nicht dieselben Anfangsbuchstaben wie der erweiterte Wert aufweisen.
Feldname | Beispiel |
---|---|
Typ | U |
Abbrev | ADRESSE |
Expanded | Hauptstraße 101 |
Versionselementtyp
Der Versionselementtyp ist ein Datensatz in FoxCode.dbf, der für Standardeinstellungen und das Nachverfolgen von Versionsinformationen verwendet wird. Dieser Elementtyp ist für die interne Verwendung reserviert.
Feldname | Beispiel |
---|---|
Typ | V |
Expanded | <Identifiziert die letzte Version von FoxCode>. Für die interne Verwendung. |
Siehe auch
Überblick über IntelliSense | Verwenden von Skripts in "FoxCode.dbf" | Visual FoxPro IntelliSense-Manager | Automatische Namen für Tabellen/Felder/Variablen | Automatische MRU-Dateien (Most Recently Used, zuletzt verwendet) | IntelliSense-Unterstützung in Visual FoxPro | Verwenden von IntelliSense in Visual FoxPro | FoxCode-Objektverweis