(CodeLib-Manager)
Registriert seit: 10. Jun 2002
4.648 Beiträge
Delphi XE Professional
|
Re: Spalten zu Grid hinzufügen
18. Sep 2008, 21:44
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;
Thomas
|
|
Zitat
|