![]() |
Spalten zu Grid hinzufügen
Hallo
Irgendwie gelingt es mir nicht, zur Laufzeit Spalten einem Grid hinzuzufügen. Ich verwende ein Grid aus dem TMS Component Pack (AdVStringGrind und AdVColumnGrid) Versucht hab' ich mit grid.rows[0].append, grid.columnheaders.add und ähnlichen, funktioniert nicht. Hat jemand ein Codebeispiel parat? Viele Grüße Thomas |
Re: Spalten zu Grid hinzufügen
Einfach durch Setzen von .ColCount
|
Re: Spalten zu Grid hinzufügen
Hallo Thomas
Eine Spalte kann so hinzugefügt werden (Spaltenzahl erhöhen)
Delphi-Quellcode:
AdvStringGrid1.ColCount := AdvStringGrid1.ColCount + 1;
|
Re: Spalten zu Grid hinzufügen
Zitat:
Viele Grüße Thomas |
Re: Spalten zu Grid hinzufügen
Anbei einige Beispiele:
Delphi-Quellcode:
type
TAdvGrid = class(TAdvStringGrid); // für Zugriff auf protected MoveColumn() Methode // Spalte rechts von Spalte ACol einfügen procedure AdvStringGrid_InsertColumn(Grid: TAdvStringGrid; ACol: Integer); begin with Grid do begin if ACol <= Grid.ColCount then begin ColCount := ColCount +1; TAdvGrid(Grid).MoveColumn(ColCount - 1, ACol); end; end; end; // Spalte mit Index ACol löschen procedure AdvStringGrid_DeleteColumn(Grid: TAdvStringGrid; ACol: Integer); begin with Grid do begin if ACol < Grid.ColCount then begin TAdvGrid(Grid).MoveColumn(ACol - 1, ColCount -1); ColCount := ColCount - 1; end; end; end; // SpaltenIndex anhand des ColumHeaders ermitteln function AdvStringGrid_GetColumnIndexByName(Grid: TAdvStringGrid; SHeaderName: string) : Integer; begin Result := Grid.ColumnHeaders.IndexOf(SHeaderName) + 1; end; Beispiel: Neue Spalte rechts neben Spalte "SpalteXYZ" hinzufügen procedure TForm1.Button1Click(Sender: TObject); var iColIndex: Integer; begin iColIndex := AdvStringGrid_GetColumnIndexByName(AdvStringGrid1, 'SpalteXYZ'); AdvStringGrid_InsertColumn(AdvStringGrid1, iColIndex) end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:43 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