![]() |
Datenbank: access • Version: 2003 • Zugriff über: dbgo
ADODataSet in ein STringgrid einfügen?
Hallo,
ich habe nach dem Auslesen einer TAbelle ein gefülltes ADODataSet. Jetzt möchte ich die Daten wieder in einem StringGrid visualisieren.
Delphi-Quellcode:
Aber wie kann ich denn jetzt zum nächsten Datensatz im DataSet springen? Gibt es nciht so etwas wie ADODataSet.Fields[i].FieldByName('Name').asstring? Dann könnte ich das DataSet mit meiner Zählvariable steuern. Wie macht man sowas richtig?
procedure TForm2.FillGrid(Sender: TObject);
var i: integer; begin for i := 0 to ADODataSet1.RecordCount do begin StringGrid1.Cells[i,0] := ADODataSet1.FieldByName('Name').AsString; StringGrid1.Cells[i,1] := ADODataSet1.FieldByName('Strasse').AsString; end; end; Vielen Dank Dragi [edit=sakura] [code]->[delphi] Mfg, sakura[/edit] |
Re: ADODataSet in ein STringgrid einfügen?
Hallo Dragi,
du kannst über die Eigenschaft RecNo den aktuellen Datensatz wählen. Ich habe im Code deine Zellenadressierung geändert, so dass die Felder eines Satzes in den Spalten einer Zeile angezeigt werden - bei dir wurden die Felder eines Satzes untereinander geschrieben. Bei der Zeilenadressierung habe ich Titelzeilen im StringGrid berücksichtigt. Generell solltest du dir eine Namenskonvention für deine Komponenten und Variablen auferlegen. Die von der IDE vorgegebene Konvention - Klassenname mit angehängtem Zähler, aber ohne T - ist zu abstrakt.
Delphi-Quellcode:
Kennst du schon
procedure TForm2.FillGrid(Sender: TObject);
var i, iRow: integer; begin iRow := StringGrid1.FixedRows; with ADODataSet1 do for i := 1 to RecordCount do begin RecNo := i; StringGrid1.Cells[0, iRow] := FieldByName('Name').AsString; StringGrid1.Cells[1, iRow] := FieldByName('Strasse').AsString; Inc(iRow); end; end; ![]() ![]() Grüße vom marabu |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz