![]() |
Datenbank: Paradox • Version: 7 • Zugriff über: Query Komponente
Schleife zum Ausgaben aller Werte einer DB
Hallo,
ich möchte alle Inhalte einer Datenbank in einem Listview ausgeben lassen. Ich habe bis jetzt folgenden Quelltext dafür verwenden. Er werden jedoch nur der erste Datensatz ausgegeben. Was ist falsch? Wie bekomme ich alle anderen auf in mein Listview? Muss ich dafür eine Schleife benutzen? Wenn ja, wie?
Delphi-Quellcode:
Gruß
Frame31.Query1.Active := false;
Frame31.Query1.SQL.Clear; Frame31.Query1.SQL.Add('SELECT * FROM Benutzer'); Frame31.Query1.Active := true; Frame31.ListView1.Items.Add.Caption := (Frame31.Query1.FieldByName('Benutzer').AsString); Frame31.ListView1.Items.Add.SubItems.Add(Frame31.Query1.FieldByName('Berechtigung').AsString); Thomas |
Re: Schleife zum Ausgaben aller Werte einer DB
Hai Plague,
baue einfach eine While-Do Schleife:
Delphi-Quellcode:
[Edit] Warum schreibst Du eigentlich überall Frame31 davor?
Frame31.Query1.Active := false;
Frame31.Query1.SQL.Clear; Frame31.Query1.SQL.Add('SELECT * FROM Benutzer'); Frame31.Query1.Active := true; While Not (Frame31.Query1.Eof) do begin Frame31.ListView1.Items.Add.Caption := (Frame31.Query1.FieldByName('Benutzer').AsString); Frame31.ListView1.Items.Add.SubItems.Add(Frame31.Query1.FieldByName('Berechtigung').AsString); Frame31.Query1.Next; end; |
Re: Schleife zum Ausgaben aller Werte einer DB
Das hatte ich auch schon versucht. Jedoch wird das Programm so nicht erzeugt. Zwar wird kein Fehler angezeigt, jedoch wird das Programm nicht angezeigt...
Was kann ich tun? Gibt es noch eine andere Möglichkeit? Gruß Thomas |
Re: Schleife zum Ausgaben aller Werte einer DB
Die Frames nutze ich, weil der Befehl beim OnCreate Ereignis der Form ausgeführt wird, die Komponenten und das Listview befinden sich jedoch auf einem Frame.
Gruß Thomas |
Re: Schleife zum Ausgaben aller Werte einer DB
Zitat:
|
Re: Schleife zum Ausgaben aller Werte einer DB
Hmm, das könnte vielleicht sein, aber komisch ist doch, dass es ohne die Schleife funktioniert... Oder?
|
Re: Schleife zum Ausgaben aller Werte einer DB
Zitat:
|
Re: Schleife zum Ausgaben aller Werte einer DB
Doch es ist recht umfangreich...
Aber ich versuche es anderes! Hier alle Komponenten die auf Frame31 sitzen: - Query - DataSource - XP Style - Image List - Listview - (mehrere) Checkbox - Edit - 4 Button Geladen wird alles bei OnCreate von Form1: - Quelltext siehe oben Problem: - While Schleife Vielleicht hilft das bei der Lösung... |
Re: Schleife zum Ausgaben aller Werte einer DB
Hai Plague,
so geht es bei mir (allerding bei mySQL mit Zeos) ohne Probleme. Man beachte wie ich ein Item erzeuge ;-)
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var item : TListItem; begin with Frame21 do begin Query1.Close; Query1.SQL.Text := 'SELECT * FROM test1'; Query1.Open; While not (Query1.Eof) do begin item := ListView1.Items.Add; item.Caption := Query1.FieldByName ('name').AsString; item.SubItems.Add(Query1.FieldByName ('vorname').AsString); Query1.Next; end; end; end; |
Re: Schleife zum Ausgaben aller Werte einer DB
Zitat:
Gruß Thomas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:58 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 by Thomas Breitkreuz