Visual FoxPro bietet neue Klassen, Befehle, Funktionen und Systemvariablen mit den folgenden Features:
Sie können jetzt eine strukturierte Fehler- und Ausnahmebehandlung mittels der TRY...CATCH...FINALLY-Funktionalität implementieren. Sie enthält die neue Ausnahmeklasse Exception, die THROW-Klausel und die SYS(2410) - Error Handler-Funktion.
Sie können eine Exception-Klasse definieren und ableiten, die dazu verwendet wird Fehler und Ausnahmen zu behandeln. Visual FoxPro erstellt Ausnahmeobjekte automatisch um Informationen über den Fehler abzulegen, der imTRY-Block einer TRY...CATCH...FINALLY Fehlerbehandlungsstruktur aufgetreten ist.
Für weitere Informationen, siehe Strukturierte Fehlerbehandlung, TRY...CATCH...FINALLY-Befehl, Exception-Klasse und SYS(2410) - Fehlerbehandlung.
Sie können Collections verwenden um eine Satz zusammengehöriger Elemente zu erstellen. Collections bieten eine Möglichkeit mit den enthaltenen Objekten zu arbeiten und verwenden Standardwege für einfachen und wiederholten Zugriff. Für weitere Informationen, siehe Collection-Klasse.
Visual FoxPro enthält die neuen Klassen XMLAdapter, XMLTable und XMLField um die Kompatibilität mit XML-DiffGram und ADO.NET DataSet-Formaten zu erhöhen und um hierarchisch formatiertes XML für folgendes zu unterstützen:
XMLAdapter ist eine "zwei Wege"-Klasse. Sie können XML und das enthaltene Schema importieren oder Sie können XML aus Tabellen erstellen und generieren.
Anmerkung Die XMLAdapter-Klasse benötigt mindestens Microsoft XML Core Services (MSXML) 4.0 Service Pack 1 (SP1).
Visual FoxPro aktualisiert die STRCONV( )-Funktion um die Codierung und Decodierung von HexBinär zu unterstützen.
Für weitere Informationen, siehe XML-Funktionalität unter Verwendung von XML-Adaptern, Datentypzuordnung von Visual FoxPro und XML-Schema, XMLAdapter-Klasse, XMLTable-Klasse, XMLField-Klasse und STRCONV( )-Funktion.
Visual FoxPro erweitert die Ereignisbandlung für native Visual FoxPro-Objekte durch die neuen Funktionen BINDEVENT(), UNBINDEVENTS(), RAISEEVENT() und AEVENTS(). Für weitere Informationen, siehe Event Binding für Visual FoxPro Objekte.
Sie können jetzt Definitionen und Klassenableitungen für Mitgliedsklassen (Member) vornehmen. Zu diese Mitgliedklassen und Ihren Container gehören die folgenden.
Mit der Verwendung der Mitglieds-Klassen können Sie ein einheitliches Verhalten für alle Mitglieder einer bestimmten Klasse definieren. So können sie z.B. ein bestimmtes Verhalten im Activate-Ereignis der Page-Klasse definieren, die in einer PageFrame-Klasse bzw. -Objekt verwendet werden soll. Alle enthaltenen Seiten (Page-Objekte) der PageFrame erben so den selben Code und das selbe Verhalten.
Die Klassen PageFrame, CommandGroup, OptionGroup und Grid haben zwei neue Eigenschaften, MemberClassLibrary und MemberClass, die Sie dazu verwenden können, die Standardklasse für Mitgliedsobjekte zu bestimmen. Wenn diese Eigenschaften gesetzt werden, werden neue Mitgliedsobjekte von der angegebenen Mitglieds-Klasse abgeleitet. Spaltenobjekte (Column) haben zwei neue Eigenschaften, die Sie verwenden können um eine benutzerdefinierte Header-Klasse für den Spaltenkopf zu spezifizieren.
Sie können Page-Klassen im Klassendesigner bearbeiten und abgeleitete Klassen erstellen. Jedoch enthält der Klassendesigner weder Column- nochHeader-Klasse.
Für weitere Informationen, siehe Member-Klassen.
Sie können jetzt durch setzen der BindControls-Eigenschaft eines Formulars angeben, wann die Datenbindung bei Datengebundenen Steuerelementen stattfindet. Für weitere Informationen, siehe BindControls-Eigenschaft.
Visual FoxPro verbessert die Remote-Datenverbindung durch die neue CursorAdapter-Klasse und hinzufügen der neuen Eigenschaften DataSource und DataSourceType zur Datenumgebung bzw. der DataEnvironment-Klasse. Für weitere Informationen über die CursorAdapter-Klasse, siehe Erweiterung der Features im Bereich des Datenzugriffs.
Sie können die Spalten an die Daten im Datenraster (Grid) und Datenfenster (Browse) durch AllowAutoColumnFit-Eigenschaft und Verwendung der AutoFit-Methode automatisch anpassen. Für weitere Informationen, siehe AllowAutoColumnFit-Eigenschaft, AutoFit-Methode, und Spalten automatisch an Daten anpassen.
Sie können Spalten durch Verwendung des BROWSE-Befehls mit der LOCK-Klausel oder durch setzen der Eigenschaften LockColumns und LockColumnsLeft im Datenraster festsetzen. Für weitere Informationen, siehe BROWSE-Befehl, LockColumns-Eigenschaft, LockColumnsLeft-Eigenschaft und Sperren von Spalten.
Sie können die Farben für die Anzeige der ausgewählten Zeile und Einträge der TextBox-Steuerelemente in einem Datenraster durch setzen der Eigenschaften HighlightForeColor, HighlightBackColor, SelectedItemBackColor, SelectedItemForecolor und HighlightStyle steuern.
Sie können Bilder relativ zur ihrer Beschriftung durch Setzen der PicturePosition-Eigenschaft in den Steuerelementen CommandButton, OptionButton und CheckBox positionieren.
Für weitere Informationen, siehe PicturePosition-Eigenschaft.
Sie können steuern wo die Registerkarten eines PageFrame-Steuerelements angezeigt werden, indem Sie die TabOrientation-Eigenschaft setzen. Für weitere Informationen, siehe TabOrientation-Eigenschaft.
Sie können durch setzen der EnableHyperlinks-Eigenschaft steuern, ob Hyperlinks in TextBox und EditBox angezeigt und aktiviert sind. Für weitere Informationen, siehe EnableHyperlinks-Eigenschaft.
Sie können jetzt Windows XP Design für Ihre Anwendungen verwenden die auf einem Betriebsystem ab Windows XP laufen. Das Windows XP Design ist eine neue Technologie das eine Anzahl von visuellen Attributen für eine Benutzeroberfläche steuert. Dazu zählen die Anzeige von Steuerelementen, Rahmenfarben und -Stil, Auswahl- und Hover-Effekte. Für weitere Informationen, siehe Themes-Eigenschaft, Style-Eigenschaft und SYS(2700) - Aktivieren des Windows XP Designs.
Visual FoxPro ersetzt den eigenen Support für Graphics Interchange Format (.gif) und Joint Photographic Electronic Group (.jpeg) durch das Graphics Device Interface+ (GDI+), die nächste Generation der Grafischen Schnittstelle für Microsoft Windows XP und zukünftigen Versionen des Windows Betriebsystems.
Mit GDI+ können Sie jetzt Bilder durch setzen der RotateFlip-Eigenschaft des Image-Steuerelement rotieren, abschneiden und umdrehen.
Für weitere Informationen, siehe Grafikunterstützung in Visual FoxPro, RotateFlip-Eigenschaft, Picture-Eigenscahft und Dialogfeld "Grafik öffnen".
Sie können mit Hilfe der neuen FontCharSet-Eigenschaft die Zeichensätze auf jedem Objekt steuern, das Fonts unterstützt. Für weitere Informationen, siehe FontCharSet-Eigenschaft.
Sie können Fenster und Symbolleisten in Visual FoxPro programmgesteuert mittels des DOCK WINDOW-Befehls andocken. Die neue ADOCKSTATE()-Funktion gibt den Status eines gedockten Fensters oder einer gedockten Symbolleiste zurück. Für weitere Informationen, siehe Andocken von Fenstern, DOCK WINDOW-Befehl und ADOCKSTATE( )-Funktion.
Sie können Kontrollkästchen (CheckBoxes) zentriert in der Spalte eines Datenrasters ausrichten. Sie nehmen diese Einstellung mittels der Centered-Eigenschaft der CheckBox wie im folgenden Beispiel gezeigt vor:
CheckBox.Centered [= lExpr]
Für weitere Informationen, siehe Centered-Eigenschaft.
In vorhergehenden Versionen von Visual FoxPro wurden Bilder, die einen Eintrag in der Liste eines Kombinationsfeldes (ComboBox) zugeordnet waren, nicht im TextBox-Bereich, beim Bearbeiten des Eintrages, angezeigt. Sie können optional ein Bild im TextBox-Bereich der ComboBox anzeigen lassen und über die Eigenschaft PictureSelectionDisplay bestimmen, wie das Bild angezeigt wird
Für weitere Informationen, siehe PictureSelectionDisplay-Eigenschaft.
Sie können eine Listenfeld (ListBox) mit Hilfe von Datenrastern Darstellen (Grids) darstellen, indem Sie durch setzen der AllowCellSelection-Eigenschaft festlegen, ob ein Anwender individuelle Zellen oder immer nur die ganze Zeile auswählen kann. Das Verhalten, ob Sie die individuelle Zelle oder die ganzen Zeile auswählen können, ändert nichts an der Farbanzeige der ausgewählten Zeile oder Zelle. Das KeyPress-Ereignis gehört nun auch zum Datenraster.
Für weitere Informationen, siehe AllowCellSelection-Eigenschaft und KeyPress-Ereignis.
Sie können die Empty-Klasse verwenden, wenn Sie mit Geschäftsobjekten arbeiten. Ein Empty-Objekt wird für optimale Performanz schnell instanziiert und wieder freigegeben. Ein Empty-Objekt wir typischer Weise in den folgenden Szenarios verwendet:
Die Empty-Klasse besitzt keine Eigenschaften, Methoden oder Ereignisse, sie kann auch nicht abgeleitet werden. Sie können eigene Eigenschaften nur zur Laufzeit mittels der ADDPROPERTY( )-Funktion oder dem SCATTER...NAME-Befehl und der ADDITIVE-Klausel hinzufügen.
Die Empty-Klasse steht nur innerhalb einer Programm-Datei (.prg) zur Verfügung. Sie können keine Empty-Klasse in einer visuelle Klassenbibliothek (.vcx) definieren.
Für weitere Informationen, siehe Empty-Klasse.
Sie können ein bestimmtes Verhalten, wie das Verschieben eines Elements mit dem neuen OnMoveItem-Ereignis abbrechen, wenn das Element mit den Verschiebesymbolen unter Verwendung der Maus, Tastenanschlägen oder programmgesteuert verschoben wird. OnMoveItem-Ereignis wird ausgelöst, nachdem ein Element ausgesucht und verschoben wurde, jedoch bevor es im Steuerelement angezeigt wird. Für weitere Informationen, siehe OnMoveItem-Ereignis.
Sie können Elemente programmgesteuert auf eine neue Position bewegen, indem sie die neue MoveItem-Methode anwenden. Für weitere Details, siehe MoveItem-Methode.
Sie können nun zur Laufzeit Eigenschaften und ihre Werte dynamisch jedem gültigen Visual FoxPro Objekt hinzufügen und von dort wieder entfernen. Das beinhalten Objekte die aus Visual FoxPro Klassen, COM-Klassen und solche die mit dem SCATTER...NAME-Befehl instanziiren wurden. Für weitere Informationen, siehe ADDPROPERTY( )-Funktion und REMOVEPROPERTY( )-Funktion.
Anwender die in Visual FoxPro geschriebene Anwendungen laufen lassen, die auf Daten und Ressourcen im Netzwerk zugreifen, können manchmal Performanzminderungen feststellen, wenn die Anwendung im Netzwerk nach einer Funktion, Prozedur oder einer ausführbaren Datei usw. in einer anderen Anwendung sucht.
Sie können nun angeben das Visual FoxPro in einer Anwendung nach einer spezifischen Prozedur oder einer benutzerdefinierten Funktion (UDF) sucht bevor es in den mit SET DEFAULT und SET PATH angegebenen Ablagepfaden sucht. Indem Sie das machen, können Sie die Performanz einer Anwendung, die in einem LAN oder WAN läuft verbessern. Für weitere Informationen, siehe SYS(2450) - Suchpfadreihenfolge innerhalb Anwendung und DO-Befehl.
Sie können bei einem vergleich zweier Ausdrücke einen eventuellen leeren Wert, wie z.B. Falsch (.F.) oder 0, durch einen passenden Wert zu ersetzen. Sie können diese Funktionalität verwenden, um leere Werte von Berechnungen oder Operationen ersetzen, wenn Leerwerte nicht unterstützt oder relevant sind. Für weitere Informationen, siehe EVL( )-Funktion.
Mit schnelleren Rechnern ist die Aneinanderreihung von Mausradereignisse nicht mehr kritisch. Sie können jetzt mit Hilfe der neuen Funktion SYS(2060) - MausRad-Ereignisse festlegen, ob Sie die Aneinanderreihung von Mausradereignisse zulassen möchten.
Sie können angeben ob Visual FoxPro SQL SELECT-Befehle wie in früheren Versionen oder wie in der aktuellen Version Visual FoxPro 8.0 eingeführt bearbeitet. Dies ermöglicht Ihnen die Abwärtskompatibilität für Anwendungen, die das Verhalten der älteren SQL Data Engine benötigen, beibehalten. Für weitere Informationen, siehe SYS(3099) - SQL Data Engine Kompatibilitätsmodus und SET ENGINEBEHAVIOR-Befehl.
Sie können die neue Eigenschaft AllowOutput in Formularen verwenden, um zu bestimmen, ob es sich bei der Standardausgabe um ein Formular als Zielfenster handelt. Für weitere Informationen, siehe AllowOutput-Eigenschaft.
Sie können den SET TABLEVALIDATE-Befehl verwenden, wenn Sie die Tabellenintigrität auf unterschiedlichen Ebenen überprüfen möchten. Für weitere Informationen, siehe SET TABLEVALIDATE-Befehl.
Visual FoxPro ersetzt die Klassenbibliotheken der Foundation Classes _WebServices.vcx und _WebServices.vct durch _ws3Utils.vcx und _ws3Client.vcx. Diese neuen Klassenbibliotheken verwenden SOAP Toolkit 3.0. Für weitere Informationen, siehe XML-Webdienste (Foundation Class).
Spracherweiterungen | Erweiterung der Interaktiven Entwicklungsumgebung (IDE) | Erweiterung der Features im Bereich des Datenzugriffs | Verschiedene Erweiterungen | Änderungen im Verhalten seit Visual FoxPro 7.0