AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi DBGrid Spaltenköpfe ändern?
Thema durchsuchen
Ansicht
Themen-Optionen

DBGrid Spaltenköpfe ändern?

Ein Thema von Borschti · begonnen am 31. Okt 2008 · letzter Beitrag vom 3. Mär 2010
Antwort Antwort
Borschti

Registriert seit: 1. Nov 2007
Ort: Marburg Lahn
235 Beiträge
 
Delphi 2007 Professional
 
#1

DBGrid Spaltenköpfe ändern?

  Alt 31. Okt 2008, 08:00
Datenbank: ADS • Version: 3.1 • Zugriff über: kA
Hi,

wie der Threadname schon sagt suche ich eine Möglichkeit die Spaltenköpfe meines DBGrid zu verändern, das soll natürlich passieren nachdem ich ich meine SQL Statement ausgeführt habe, also zur Laufzeit.

Ich benutze von den ADS Komponenten abgeleitete Komponenten, aber ich denke mal das es in der der hinsicht keinen Unterschied machen wird.

Ich hoffe mir kann jemand helfen, schonmal danke

mfg
Alex
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#2

Re: DBGrid Spaltenköpfe ändern?

  Alt 31. Okt 2008, 08:23
Im Eventhandler AfterOpen können die Feldlabels geändert werden:
Delphi-Quellcode:
procedure SetFieldCaption(dataset:TDataset; const FieldName, Label:string);
var
  f : TField;
begin
  Assert(Assigned(dataset));
  f := dataset.FindField(FieldName);
  if Assigned(f) then f.DisplayLabel := Label;
end;

procedure TForm1.Query1AfterOpen(...);
begin
  SetFieldCaption('BetrNetto', 'Nettobetrag (Eur)');
end
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#3

Re: DBGrid Spaltenköpfe ändern?

  Alt 31. Okt 2008, 08:54
Hallo,

andere Alternative wäre
DBGrid1.Columns.Items[0].Title := 'Spalte A'; Hiermit bekommst Du den Inhalt der ersten Zeile des Datasets als Spaltenüberschrift.
Delphi-Quellcode:
procedure TForm1.Table1AfterOpen(DataSet: TDataSet);
Var
         i : Integer;
begin
  DataSet.First;
  for i := 0 to DBGrid1.Columns.Count - 1 do begin
    DBGrid1.Columns.Items[i].Title := DBGrid1.Columns.Items[i].Field.AsString;
  end;
end;
  Mit Zitat antworten Zitat
Borschti

Registriert seit: 1. Nov 2007
Ort: Marburg Lahn
235 Beiträge
 
Delphi 2007 Professional
 
#4

Re: DBGrid Spaltenköpfe ändern?

  Alt 31. Okt 2008, 09:53
Zitat von sx2008:
Im Eventhandler AfterOpen können die Feldlabels geändert werden:
Delphi-Quellcode:
procedure SetFieldCaption(dataset:TDataset; const FieldName, Label:string);
var
  f : TField;
begin
  Assert(Assigned(dataset));
  f := dataset.FindField(FieldName);
  if Assigned(f) then f.DisplayLabel := Label;
end;

procedure TForm1.Query1AfterOpen(...);
begin
  SetFieldCaption('BetrNetto', 'Nettobetrag (Eur)');
end
Danke hat auf anhieb geklappt, danke auch an die restlichen Antworten.

mfg
Alex
  Mit Zitat antworten Zitat
aurikel_Max

Registriert seit: 9. Okt 2009
86 Beiträge
 
#5

Re: DBGrid Spaltenköpfe ändern?

  Alt 3. Mär 2010, 19:19
Zitat von nahpets:
Hallo,

andere Alternative wäre
DBGrid1.Columns.Items[0].Title := 'Spalte A';
Hallo,

ich hoffe, das stellt kein Problem dar, dass ich den Thread nochmal "ausgrabe", wenn doch, bitte nicht steinigen.

Ich möchte, wie der Threadstarter, bei einem DBGrid die "Überschrift" einer Spalte bearbeiten, dafür hab ich folgendes, nach dem Zitat von nahpets, versucht:

dbgBlubb.Columns.Items[2].Title := 'Blubbah'; Dafür bekomm ich die folgende Fehlermeldung beim Kompilieren:

Zitat:
Incompatible types: 'TColumnTitle' and 'string'
Mir ist schon klar, was die Fehlermeldung aussagt, aber ich weiß nicht wirklich, wie ich die Anweisung ändern muss, damit der Fehler nicht mehr auftritt.

Liebe Grüße (und bitte nicht steinigen)
Max
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: DBGrid Spaltenköpfe ändern?

  Alt 3. Mär 2010, 19:30
dbgBlubb.Columns.Items[2].Title.Caption := 'Blubbah';
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
aurikel_Max

Registriert seit: 9. Okt 2009
86 Beiträge
 
#7

Re: DBGrid Spaltenköpfe ändern?

  Alt 3. Mär 2010, 19:36
Zitat von DeddyH:
dbgBlubb.Columns.Items[2].Title.Caption := 'Blubbah';
Du hast Recht, danke.

Warum bin ich heute nachmittag, als ich mich damit beschäftigt habe, nicht selbst darauf gekommen? Brett vor dem Kopf ..

Liebe Grüße
Max
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:18 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