Mittlerweile klappt die Verbindung zu Firebird 5.0.
Jetzt habe ich eine Tabelle erstellt. Ich möchte mehr Text in die Überschrift reinpacken (z.B. 1. Zeile "Pausenzeit'; 2. Zeile 'in Minuten'). In der Spalte sind naximal 4 stellige Zahlen ohne Nachkommastellen enthalten.
Den ganzen Text in eine Zeile zu packen führt zu sehr breiten Spalten. Das macht das Ganze sehr unübersichtlich.
https://www.phind.com empfiehlt in diesem Fall #13#10 (Zeilenumbruch) zu nehmen, das funktioniert aber nicht.
procedure TForm1.FormCreate(Sender: TObject);
begin
DBGrid1.Columns[4].Title.Caption :=
'Oberer Text'#13#10 +
'Unterer Text';
end;
Alternativ könnte man ein Tooltip verwenden, der erscheint wenn man mit der Maus darüber fährt. Habe ich aber noch nicht ausprobiert. Die Funktion Hint habe ich im DBGrid noch nicht zum laufen bekommen.
Firebird DBGRid 2.zeilige Überschrift möglich?
-
- Beiträge: 24
- Registriert: Sa 15. Feb 2025, 13:33
-
- Beiträge: 24
- Registriert: Sa 15. Feb 2025, 13:33
Re: Firebird DBGRid 2.zeilige Überschrift möglich?
Mit Multiline auf true gehen mehrzeilige Spaltenüberschriften. Nur die Spaltenhöhe in der Überschrift passt dann nicht mehr. Die Höhe der Überschrift kann im Programmcode mit
DBGrid1.DefaultRowHeight := 35;
geändert werden.
Leider werden alle anderen Zeilen auch mit der selben Höhe dargestellt.
DBGrid1.DefaultRowHeight := 35;
geändert werden.
Leider werden alle anderen Zeilen auch mit der selben Höhe dargestellt.
-
- Beiträge: 726
- Registriert: Do 27. Sep 2012, 00:07
- OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
- CPU-Target: x86_64-win64
- Wohnort: Hamburg
Re: Firebird DBGRid 2.zeilige Überschrift möglich?
Das:
Hier gibt es TdxDBGridController, aber ich weiß nicht ob es mehrzeilige Überschriften unterstützt.
Code: Alles auswählen
type
TDBGridHack = class(TDBGrid)
public
property RowHeights;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
TDBGridHack(DBGrid1).RowHeights[0]:=35;
// für 35 am besten: DBGrid1.Canvas.TextHeight('Äj')*ZeilenAnzahl+Ränder
end;