Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Spaltennamen ins ComboBox (https://www.delphipraxis.net/50260-spaltennamen-ins-combobox.html)

john77 22. Jul 2005 16:07

Datenbank: DB2 • Zugriff über: uber dbExpress Komponenten

Spaltennamen ins ComboBox
 
Ich fulle ein DataGrid mit Daten(ID, Name, Datum ...)

Jezt will ich ComboBox mit FieldsNamen aus DataGrid befüllen !

Wie geht das :wall: ? Helft mir bitte :)

jensw_2000 22. Jul 2005 16:26

Re: Spaltennamen ins ComboBox
 
Wenn du keine statischen Spaltenzuweisungen in deinem GBGrid erstellt hast dann

Delphi-Quellcode:
DBGrid1.Datasource.Dataset.GetFieldNames(Combobox1.items);

Wenn du die Spalten im DBGid fest hinzugefügt hast dann

Delphi-Quellcode:
for i:=0 to dbgrid1.columns.count-1 do
begin
  // Feldnamen in eine Combobox schreiben
  Combobox1.items.add(dbgrid1.Columns[i].FieldName);

  // Spaltentitel in eine Combobox schreiben
  Combobox2.items.add(dbgrid1.Columns[i].Title);
end;
EDIT:
----------------------------------------------------------------------------
Fast übersehen,
Willkommen in der DP :cheers:

Übrigens -> in der IDE das SQLTable-/SQLQuery Object markieren -> F1
Die Methode GetFieldNames sollte dann schnell ins Auge fallen ...

Das geht oft schneller und bringt dazu noch einen gewissen Lerneffekt ...

Schöne Grüße,
Jens

:hi:

john77 22. Jul 2005 16:38

Re: Spaltennamen ins ComboBox
 
Klappt nicht :(

ComboBox bleibt leer ...
hebe mit debuger ausprobiert - DBGrid1.Columns.Count immer gleich 1

jensw_2000 22. Jul 2005 16:46

Re: Spaltennamen ins ComboBox
 
Hast du die Spalten fest in dein Grid eingetragen oder ist das Grid leer und die Spalten sind erst zu sehen wenn du die Datenquelle auf Active :=true setzt ?
Welche der beiden Varianten hast du verwendet ?

Wann und wo rufst du den Code auf ? Poste mal ein bisschen Code, dann müssen wir weniger raten ..

:hi:

john77 22. Jul 2005 17:05

Re: Spaltennamen ins ComboBox
 
Danke
:cheers:


Die spaltennamen sind nicht fest ...

Wie du es schon gesagt hast - ich setze in Eigenschaften auf True.


Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
  i : integer;
begin
  for i:=0 to JvDBUltimGrid1.FieldCount do
    begin
      // Feldnamen in eine Combobox schreiben
      Combobox1.items.add(JvDBUltimGrid1.Columns[i].FieldName);

      // Spaltentitel in eine Combobox schreiben
      //Combobox2.items.add(dbgrid1.Columns[i].Title);
end;
end;

john77 22. Jul 2005 17:08

Re: Spaltennamen ins ComboBox
 
Danke ! Bis Montag ... muss weg !

jensw_2000 22. Jul 2005 18:17

Re: Spaltennamen ins ComboBox
 
Dann muss das

Delphi-Quellcode:
Dataset.GetFieldNames(Combobox1.items);
ins AfterOpen deiner SQLTable bzw. Query eingebaut werden. Dein DBGrid liest die Spalten ohnehin 1:1 aus der Datenquelle aus, falls du diese nicht fest zuweist. Dann können wir Datenquelle auch gleich für die Combobox-Items nehmen ...


Bis Montag is nich
Ich habe jetzt erstmal 2 Wochen Urlaub :mrgreen: :dancer: :dancer2:

Und Tschüss :hi:


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz