Session D-VFXA
Neues in Visual Extend 7 (VFX)
Uwe Habermann
Uwe@Habermann-Leu.de
Einleitung
Auf der diesjährigen Visual FoxPro Entwicklerkonferenz wird das VFP-Entwicklungs-Framework Visual Extend 7 erstmals vorgestellt. Visual Extend ist eine Klassenbibliothek und ein durch Builder unterstütztes Framework zur hocheffizienten Erstellung von VFP-Anwendungen im Fileserver wie im Client/Server Bereich. Die Entwicklung von Visual Extend begann bereits im Jahre 1993. VFX kam 1994 erstmals auf den Markt und kann heute als eines der etabliertesten Frameworks im VFP Umfeld bezeichnet werden.
In dieser Session werden die interessantesten Neuheiten, welche in die neue Version VFX 7 integriert wurden, anhand von Beispielen gezeigt. In dieser Session können auch Fragen und Anregungen eingebracht werden, um für die Teilnehmer den Nutzen zu maximieren. VFX Wissen ist von Vorteil, aber nicht Bedingung.
Die Entwicklungsumgebung
VFX besteht aus einer Musterapplikation und zahlreichen Buildern. Zunächst sollen die neuen Eigenschaften der Builder vorgestellt werden. Anschließend werden die neuen Funktionen der Klassenbibliotheken erläutert.
VFX Application Wizard
Der Application Wizard dient zum Erstellen eines neuen Projekts. Schritt für Schritt wird der VFX-Anwender durch einen Dialog geführt und kann die projektspezifischen Eingaben machen.
Beim Erstellen des Projekts wird die VFX-Musterapplikation in das neue Projektverzeichnis kopiert. Entsprechend der gewählten Sprache werden Include-Dateien und Menüs hinzugefügt. Zum Schluss wird das neue Projekt vollständig neu kompiliert.
VFX Application Manager
Nach dem Start des VFX-Menüs wird automatisch der VFX Application Manager gestartet. Hiermit werden die Projekte verwaltet und zur Bearbeitung geöffnet.
Der VFX Application Manager wurde um einige neue Funktionen erweitert. Aus dem Application Manager kann jetzt direkt der VFX Application Wizard gestartet werden um ein neues VFX-Projekt anzulegen.
Es ist möglich Projekte zu öffnen und den VFP-Standardordner auf den Projektordner zu stellen, ohne das Projekt in die Auswahlliste des Application Manager aufzunehmen.
Wie in VFX 5 ist es wieder möglich ein Projekt vollständig neu zu kompilieren, z. B. um geänderte Include-Dateien in alle Kompilierungen einzubeziehen.
Die VFX Project Properties können direkt aus dem Application Manager bearbeitet werden.
VFX Project Properties
Zu den bedeutensten neuen Eigenschaften von VFX 7 gehört die Möglichkeit eigene Ableitungen der VFX-Klassen verwenden zu können. Im Dialog VFX Project Properties können die zu verwendenden Klassen für die einzelnen Steuerelement-Typen eingetragen werden. Als Vorgabe stehen hier die aus früheren VFX Versionen bekannten Klassen aus der Klassenbibliothek Vfxobj.vcx. Der VFX-Anwender kann diese Vorgaben ändern und eigene Klassen, die vorzugsweise in der Klassenbibliothek Appl.vcx gespeichert sind, eintragen. Diese Klassen werden von den VFX Buildern bei der Erstellung neuer Formulare verwendet.
VFX Form Wizard
Mit dem VFX Form Wizard werden dem Projekt neue Formulare hinzugefügt. Gegenüber früheren VFX-Versionen wurde die Liste der Formularklassen erweitert. Auch ist es nun möglich ein neues Formular auf einer eigenen Formularklasse basieren zu lassen.
VFX Form Builder
Für die verschiedenen Formularklassen stehen in VFX verschiedene Form Builder zur Verfügung.
Es gibt Form Builder für Formulare basierend auf den VFX-Klassen:
- cDataFormPage Standard-Datenbearbeitungsformular mit Seitenrahmen
- cTableForm Datenbearbeitungsformular mit Grid und anderen Steuerelementen auf einer Seite
- cOneToMany Datenbearbeitungsformular mit Grid(s) zur Bearbeitung von Child-Daten
Die von den Buildern zu verwendenden Klassen der Steuerelemente können über die VFX Project Properties eingestellt werden.
Die Klassenbibliotheken
Der Quellcode wurde für VFX 7 komplett überarbeitet. An zahlreichen Stellen gibt es kleine Verbesserungen, die zu einer Optimierung des Codes und zu einer geringfügig verbesserten Performance führen.
OLE Drag & Drop
In VFX 7 integriert ist OLE Drag & Drop. Der gesamte Inhalt eines Grid kann mit einem Mausklick zum Beispiel nach Excel kopiert werden. Auch die Daten von Bearbeitungsseiten eines Formulars können, zum Beispiel nach Word, kopiert werden.
Diese Funktion ist voll generisch in VFX 7 integriert und steht in allen Anwendungen automatisch zur Verfügung. Der VFX-Anwender muss hierfür keinerlei Einstellungen oder Programmierungen machen.
Das VFX Hilfesystem
In VFX 7 ist ein System zur Erstellung von CHM-Hilfedateien integriert.
VFX trägt in alle Steuerelemente eines Projekts automatisch eindeutige HelpContextIDs ein.
Wenn zur Laufzeit der Anwendung die Tabelle Vfxhelp.dbf zur Verfügung steht, können Hilfetexte in diese Tabelle erfasst werden. Dafür wird das Formular Vfxhelp.scx geöffnet. Der eigentliche Hilfetext wird in einer Editbox erfasst.
Mittels des VFX Help Wizard können aus den Daten der Tabelle Vfxhelp.dbf vollautomatisch HTM-Dateien sowie ein Hilfe-Projekt erstellt werden. Mit dem Help-Workshop muss dieses Projekt nur noch kompiliert werden und die CHM-Hilfedatei mit kontextsensitiver Hilfe zur gesamten Anwendung ist fertig.
Wenn die Tabelle Vfxhelp.dbf zur Laufzeit der Anwendung nicht zur Verfügung steht, wird das normale kontextsensitive Hilfesystem aktiviert. Die CHM-Hilfedatei wird geöffnet und als Parameter wird die HelpContextID des aktiven Steuerelements übergeben.
Weitere Eigenschaften von VFX sind in den Sessionnotes D-VFXB beschrieben.
|