Detaillierter Überblick über die Funktionen der FastGrid-Bibliothek

2026-05-20

Detaillierter Überblick über die Funktionen der FastGrid-Bibliothek

Benutzer von FastReport VCL Ultimate haben wahrscheinlich bereits bemerkt, dass im Installer zwei neue Einträge erschienen sind: FastEditors VCL und FastGrid VCL. Außerdem wurde im DemoCenter eine neue Demo hinzugefügt – FastGrid VCL Demo.

FastGrid ist eine Bibliothek zur Visualisierung, Bearbeitung und Strukturierung von Daten unter VCL und Lazarus. Sie besteht aus einer Tabelle – einem Schlüsselelement der visuellen Programmierung – und ermöglicht die übersichtliche Darstellung von Daten. Sie wird aktiv in Anwendungen für die Arbeit mit Datenbanken, Tabellen und Listen eingesetzt. Mit FastGrid lassen sich benutzerfreundliche und leistungsfähige Programme zur Informationsverarbeitung erstellen.

Die integrierten Funktionen zur Filterung, Sortierung und Strukturierung von Daten vereinfachen die Entwicklung erheblich. Sie reduzieren den Arbeitsaufwand, ersparen übermäßige Programmierarbeit und ermöglichen es, sich auf die Geschäftslogik zu konzentrieren.

FastGrid-Demo

 


 

Schlüsselfunktionen von FastGrid

  1. Arbeit in zwei Modi. Der erste Modus ist der eines herkömmlichen DBAware-Komponenten (DB). Über die Komponente TDataSource wird eine Verbindung zu den Daten hergestellt, und die weitere Arbeit erfolgt ähnlich wie mit DBGrid (nur deutlich komfortabler). Im zweiten Modus (Unbound) speichert das Grid die Daten selbst. Für den Anwender unterscheiden sich diese beiden Modi optisch in keiner Weise. Auch aus Sicht des Entwicklers sind die Unterschiede nicht sehr groß.
  2. Komfortable Dateneingabe. Viele wissen, wie umständlich die Eingabe numerischer Daten mit TEdit sein kann. Hier muss sichergestellt werden, dass der Benutzer nur Ziffern eingibt, und der eingegebene Wert muss auf einen bestimmten Bereich kontrolliert werden. Der derzeitige Satz an integrierten Editoren in FastGrid deckt bereits die meisten Anforderungen der Benutzer ab. Es ist geplant, die Anzahl dieser Editoren in Zukunft deutlich zu erweitern.
  3. Manuelle Eingabe großer Datenmengen. Bei der Entwicklung wurde großer Wert auf die Konfiguration von Tastenkombinationen zur Beschleunigung der Dateneingabe gelegt.
  4. Integriertes Navigationselement. Bei Bedarf können Sie es auf einer beliebigen Seite des Grids positionieren, die erforderlichen Schaltflächen konfigurieren oder es ganz ausblenden.
  5. Integrierte Sortier- und Filterfunktionen. Diese Funktionen sind sowohl programmgesteuert als auch über die Benutzeroberfläche verfügbar. Sortiert werden kann gleichzeitig nach mehreren Spalten, sowohl aufsteigend als auch absteigend. Die Filterung ist sowohl auf Ebene einer einzelnen Spalte als auch auf Datensatzebene verfügbar.
  6. Vielfältige Möglichkeiten zur Anpassung des Erscheinungsbilds. Mit bestimmten Einstellungen können Sie beispielsweise alle im Grid verwendeten Schriftarten fett darstellen lassen, ohne deren Größe oder andere Schriftattribute zu verändern.
  7. Mehrstufige Gruppierung von Grid-Zeilen nach Spaltenwerten. Für die Gruppierung werden auch Kombinationen mehrerer Spalten unterstützt.
  8. Und natürlich die Integration mit FastReport. Mit der speziellen Komponente TfrGridReportBuilder können Sie Ihr Grid buchstäblich mit einer einzigen Codezeile drucken und mit Hilfe der angebundenen Exportfilter in jedes gewünschte Format exportieren.

 


 

Erstellung einer Demoanwendung mit FastGrid

Let's try creating a small data viewing application. This application will use the demo database included with , namely demo.mdb. Versuchen wir, eine kleine Anwendung zur Datenanzeige zu erstellen. In dieser Anwendung verwenden wir die Beispieldatenbank aus dem FastReport VCL-Lieferumfang, nämlich demo.mdb.

Platzieren Sie ein TADOConnection, eine TADOTable, und eine TDataSource auf dem Formular. Konfigurieren Sie TADOConnection für die Beispieldatenbank demo.mdb (wenn Sie das DemoCenter installiert haben, befindet sich diese Datenbank standardmäßig im Ordner "C:\Users\Public\Documents\Fast Reports\VCL\Feature Demos\FastReport VCL Demo\Data\". Sie finden sie auch in den mit FastReport mitgelieferten Beispielverzeichnissen). Verknüpfen Sie die TADOTable mit der Datenbanktabelle „customer“ und öffnen Sie sie. Damit ist alles bereit für die Erstellung Ihrer ersten Anwendung mit FastGrid.

Im zweiten Schritt platzieren Sie das FastReport-Grid auf dem Formular. Sie finden es auf der Komponentenpalette im Reiter „FastControls VCL“. Alle Komponenten in diesem Reiter werden von uns aktiv in unserer Arbeit eingesetzt, und Sie können sie bei der Bearbeitung und Vorschau von Berichten sehen.

Nun verbinden wir unser Grid mit den Daten. Beachten Sie, dass das Grid eine komplexe Komponente ist. Auf dem Grid können sich eine oder mehrere View-Elemente befinden, die die Daten anzeigen. Außerdem kann sich auf dem Grid ein Datennavigator befinden.

FastGrid mit „Legende“

In der unteren linken Ecke des Grids sehen Sie die „Legende“. Die Legende zeigt das Grid selbst sowie die darauf liegenden weiteren Komponenten. Klicken Sie in der Legende mit der Maus auf das Element frGridTableView1. Nun werden im Objektinspektor die Eigenschaften des auf dem Grid liegenden Views angezeigt. Suchen Sie nun im Objektinspektor die Eigenschaft DataController und klappen Sie sie auf. Setzen Sie anschließend die Eigenschaft DataController.DataSource auf DataSource1. Nun ist der aktuelle View mit den Daten verbunden.

Aber wie werden nun die Daten selbst angezeigt? Im standardmäßigen DBGrid werden die Daten automatisch angezeigt. Bei uns müssen jedoch zuerst die anzuzeigenden Felder hinzugefügt werden. Öffnen Sie die mit dem Grid verbundene Tabelle. Klicken Sie dann mit der rechten Maustaste auf die Legende, dann auf die Zeile mit unserem View und wählen Sie im Kontextmenü „Add missing columns“. Wie der Name schon sagt, fügt dieser Menüpunkt dem aktuellen View alle Felder aus dem verbundenen DataSource hinzu, die dort noch fehlen. Da bei uns alle Felder fehlen, werden alle Felder hinzugefügt. Das Ergebnis sollte etwa wie in der Abbildung unten aussehen. Alternativ hätte man auch den Menüpunkt „Link to DataSource“ wählen können – dann hätte sich das Grid sofort verbunden und alle Felder aus der Datenquelle erstellt. Die Befehle in diesem Menü ermöglichen es auch, alle Felder aus dem Grid zu entfernen oder nur ein einzelnes Feld zur weiteren Konfiguration im Objektinspektor hinzuzufügen.

Bearbeiten wir nun das entstandene Grid ein wenig. Entfernen wir die Felder Addr2, Zip, Fax, State, TaxRate. Dazu klicken Sie einfach mit der rechten Maustaste auf den Spaltenkopf und wählen „Delete“. Bei Bedarf können wir die Spaltenbreiten direkt im Designer mit der Maus anpassen. Nun fügen wir einen Datennavigator für das Grid hinzu – wechseln Sie zu den Eigenschaften des Views und setzen Sie OptionsView.ShowDataNavigator := True.

Wir betonen ausdrücklich, dass in der Eigenschaft OptionsView die allgemeinen Parameter zusammengefasst sind, die das Erscheinungsbild des Grids beeinflussen. Die Position und andere Parameter, einschließlich der anzuzeigenden Schaltflächen des Datennavigators, können in der Eigenschaft OptionsDataNavigator konfiguriert werden. Danach erhalten wir im IDE-Editor das folgende Ergebnis:

Bearbeitung der Grid-Komponente

Gehen wir kurz die übrigen Eigenschaften des Views durch:

  • OptionsData. Hier können die erlaubten Datenoperationen konfiguriert werden.
  • OptionsCustomization legt fest, welche Aktionen dem Benutzer erlaubt sind (kann er Daten sortieren und filtern, Spaltengrößen ändern und Spalten verschieben).
    OptionsBehavior. Einstellungen für Bestätigungen bei bestimmten Datenoperationen.
  • DataController. Konfiguration der Datenanbindung.
  • OptionsView. Verschiedene Einstellungen zum Erscheinungsbild des Grids.
  • Eigenschaften, deren Namen mit „Appearance...“ beginnen, betreffen hauptsächlich das Aussehen verschiedener Grid-Elemente und deren Vererbung vom übergeordneten Element. Diese Eigenschaften werden in späteren Artikeln detaillierter betrachtet.

Starten wir nun die erstellte Anwendung und schauen wir, was ein normaler Benutzer damit machen kann.

Laufende Anwendung mit dem Grid

Ein Benutzer kann tatsächlich recht viel tun. Beispielsweise wird beim Klick auf einen Spaltenkopf die Sortierung der Werte ausgelöst. Im Screenshot haben wir das Grid nach dem Feld „Contact“ sortiert.

Wenn wir mit der Maus über einen Spaltenkopf fahren, stellen wir fest, dass dort ein Filtersymbol erscheint. Klicken wir auf dieses Symbol, erhalten wir die Möglichkeit, die Daten zu filtern.

Jeder Benutzer kann Spalten per Maus verschieben und deren Größe ändern – vorausgesetzt, Sie als Entwickler haben diese Aktionen erlaubt. Außerdem können in FastGrid nicht benötigte Spalten ausgeblendet werden. Dazu klickt man mit der linken Maustaste in die obere linke Ecke des Grids und aktiviert oder deaktiviert im erscheinenden Fenster die gewünschten Spaltennamen. Der Screenshot zeigt genau diesen Modus zum Ein- oder Ausblenden von Spalten.

Beachten Sie, dass die Spalte „CustNo“ UpDown-Elemente enthält. Das Grid hat automatisch erkannt, dass es sich um ein Zahlenfeld handelt, und den entsprechenden Editor für die Bearbeitung ausgewählt.

Bei Bedarf können Sie den Editor für ein Feld selbst auswählen. Wählen Sie dazu im IDE-Designer die gewünschte Spalte aus. Gehen Sie dann im Objektinspektor zur Spalteneigenschaft „Properties“ und wählen Sie den gewünschten Wert aus der Dropdown-Liste. Nach der Auswahl des Editors wird die Eigenschaft „Properties“ aufklappbar, und Sie können ihre Parameter konfigurieren.

Derzeit sind etwa zehn Editoren verfügbar, und deren Anzahl wächst stetig. Die Grid-Editoren sind auch als separate Komponenten verfügbar. Verwenden Sie keine Datentyp-Editoren, die nicht mit dem Typ Ihres Feldes kompatibel sind. Die Arbeit mit den Grid-Editoren wird in einem anderen Artikel ausführlich behandelt. An dieser Stelle sei angemerkt, dass der Editor für eine Grid-Spalte auch programmgesteuert über den Namen des Editors zugewiesen werden kann.

Wir haben nun eine kleine Anwendung erstellt, die eine Tabelle anzeigt – ohne eine einzige Zeile Code geschrieben zu haben! Versuchen wir nun, unserer Anwendung eine zusätzliche Funktionalität hinzuzufügen, z. B. die Auswahl einer anzuzeigenden Tabelle, das Drucken und den Export der Tabellendaten nach CSV.

Platzieren wir die folgenden Steuerelemente auf unserem Formular: eine frComboBox, 3 Buttons, eine frSpinEdit sowie die Komponenten TfrxReport, TfrGridReportBuilder und TfrxCSVExport. Die frComboBox verwenden wir zur Auswahl der anzuzeigenden Tabelle. Setzen Sie im Objektinspektor die Eigenschaft frCombobox1.Properties.DropDownStyle := frddsFixedList und schreiben Sie den folgenden Event-Handler für FormCreate:

procedure TForm1.FormCreate(Sender: TObject);
var I:Integer;
begin
 frCombobox1.Properties.Items.Clear;
 ADOConnection1.GetTableNames(frCombobox1.Properties.Items);
 I := frCombobox1.Properties.Items.IndexOf(ADOTable1.TableName);
 if I <> -1 then begin
 frCombobox1.ItemIndex := I;
 end;
end;

Und den Event-Handler für OnClick von Button1:

procedure TForm1.Button1Click(Sender: TObject);
begin
 ADOTable1.Active := False;
 ADOTable1.TableName := frCombobox1.Text;
 ADOTable1.Active := True;
 frGrid1TableView1.Columns.Clear;
 frGrid1TableView1.Columns.RetrieveMissingColumns; 
end;

Wenn wir nun unsere Anwendung starten, erscheinen in frComboBox1 alle Tabellen unserer Datenbank, wobei diejenige ausgewählt ist, die in unserer ADOTable angegeben ist. Wenn wir Button1 drücken, erscheint in der Grid der Inhalt der ausgewählten Tabelle. Versuchen wir, die Tabelle „biolife“ zu öffnen:

Ansicht der Tabelle biolife

Das Grid hat automatisch die Feldtypen erkannt und kann sogar Bilder anzeigen, die in der Datenbank gespeichert sind. Die angezeigten Bilder sind jedoch klein. Schreiben wir den folgenden Handler für frSpinEdit1:

procedure TForm1.frSpinEdit1PropertiesChanged(Sender: TObject);
begin
 frGrid1TableView1.OptionsView.RowHeight := frSpinEdit1.Value;
end;

Nun können wir durch Eingabe eines Werts in frSpinEdit1 und Drücken der Eingabetaste die Zeilenhöhe des Grids festlegen. Versuchen wir, den Inhalt des Grids zu drucken. Konfigurieren Sie dazu die Eigenschaften der Komponente frGridReportBuilder1 wie folgt: 

Report:=frxReport1;
View:=frGridTableView1;
Options.BuildReportActionType:=braShowReport
Options.BuildReportActionType:=frxCVSExport1

Und schreiben wir die eine Zeile Code in den OnClick-Handler von Button2:

procedure TForm1.Button2Click(Sender: TObject);
begin
 frGridReportBuilder1.Build;
end;

Starten Sie die Anwendung, klicken Sie auf die Schaltfläche „Print“ (Button2) und erhalten Sie:

Druck des Grids

In diesem Beispiel haben wir das Grid nach dem Feld „Company“ sortiert und einige Spalten ausgeblendet. In der Vorschau erhalten wir genau die gleichen Daten wie im Grid.

Die Eigenschaft Options.BuildReportActionType der Komponente TfrGridReportBuilder bestimmt, was mit dem aktuellen Bericht nach seiner Erstellung geschehen soll. Es gibt drei Optionen:

  • braPrepareReport bereitet den Bericht nur vor; der Entwickler entscheidet, was weiter damit geschieht.
  • braShowReport zeigt eine Druckvorschau an.
  • braExportReport exportiert den vorbereiteten Bericht mit einem zuvor festgelegten Exportfilter (über die Eigenschaft Options.DefaultExport).

Schreiben wir den folgenden Handler für Button3:

procedure TForm1.Button3Click(Sender: TObject);
begin 
 TfrGridTableViewReportBuilderOptions(frGridReportBuilder1.Options).BuildReportActionType := braExportReport;
 frGridReportBuilder1.Build; 
 TfrGridTableViewReportBuilderOptions(frGridReportBuilder1.Options).BuildReportActionType := braShowReport;
end;

Starten Sie unsere Anwendung und klicken Sie auf Button3 – zuerst erscheint der CSV-Exportdialog, dann der Dialog zum Speichern der resultierenden Datei. Wenn Sie die erhaltene Datei öffnen, stellen Sie fest, dass ihr Inhalt mit den im Grid angezeigten Daten übereinstimmt.

 


 

Kurze Zusammenfassung des Übersichtsartikels über FastGrid

Mit wenigen Mausklicks und etwa zehn Zeilen Code haben wir somit ein recht nützliches Dienstprogramm erstellt, das den Export aus einer angebundenen Datenbank ermöglicht.

Dieses Beispiel funktioniert auch unter Lazarus, einschließlich Linux. Lediglich die Datenzugriffskomponenten sowie die Methoden zum Abrufen der Tabellenliste aus der angebundenen Datenbank und zur Aktivierung der ausgewählten Tabelle müssen ausgetauscht werden. Das Grid arbeitet mit beliebigen Nachfahren von TDataSet.

Sie können sich dieses Demobeispiel ansehen, ohne selbst Code in Ihrer IDE eingeben zu müssen. Es ist im FastGrid-Demo-Set unter dem Namen „DataAware“ enthalten.

Wie wir sehen, ist die Arbeit mit der Komponente TfrGrid einfach und unkompliziert. In diesem Artikel haben wir kurz die wichtigsten Einsatzmöglichkeiten dieser Komponente durchlaufen. In zukünftigen Artikeln werden wir gemeinsam verschiedene Aspekte der Grid-Nutzung detaillierter untersuchen. Wenn Sie an bestimmten Aspekten der Anwendung interessiert sind, teilen Sie uns dies bitte mit – wir werden versuchen, die gewünschten Details ausführlicher zu behandeln. Das kleine Projekt mit dem Grid, das wir in diesem Artikel erstellt haben, sollten Sie übrigens nicht weglegen – es wird uns noch nützlich sein!

VCL FastReport FastGrid
10. Juli 2026

Wie konfiguriert man eine Content Security Policy für FastReport .NET WEB-Berichte

Lernen Sie, wie Sie die Content Security Policy für FastReport .NET WEB-Berichte konfigurieren: eine Übersicht über CSP-Direktiven und -Werte, Änderungen in der FastReport-Architektur, typische Umgehungsszenarien und Möglichkeiten, sich davor zu schützen.
22. Juni 2026

So konfigurieren Sie einen Bericht mit Business Objects im Code und im FastReport .NET Designer

In diesem Artikel wird anhand eines praxisnahen Beispiels gezeigt, wie Sie eine .frx-Berichtsvorlage erstellen und verwenden, die mit hierarchischen Business Objects in FastReport .NET herzustellen.
28. April 2026

Neues Berichtsvalidierungssystem in FastReport VCL

In diesem Artikel erklären wir, wie die Berichtsprüfung funktioniert, wie sie konfiguriert wird, wie Sie eigene Regeln anhand von Beispielen erstellen und geben Einblicke in interessante Neuerungen.

© 1998-2026 Fast Reports Inc.