AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Spalten zu Grid hinzufügen

Ein Thema von tgutgu · begonnen am 18. Sep 2008 · letzter Beitrag vom 18. Sep 2008
Antwort Antwort
tgutgu

Registriert seit: 13. Sep 2008
Ort: Hof
4 Beiträge
 
#1

Spalten zu Grid hinzufügen

  Alt 18. Sep 2008, 19:51
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
Thomas Gülden
Hof, Deutschland
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Spalten zu Grid hinzufügen

  Alt 18. Sep 2008, 19:56
Einfach durch Setzen von .ColCount
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#3

Re: Spalten zu Grid hinzufügen

  Alt 18. Sep 2008, 19:59
Hallo Thomas

Eine Spalte kann so hinzugefügt werden (Spaltenzahl erhöhen)

 AdvStringGrid1.ColCount := AdvStringGrid1.ColCount + 1;
Thomas
  Mit Zitat antworten Zitat
tgutgu

Registriert seit: 13. Sep 2008
Ort: Hof
4 Beiträge
 
#4

Re: Spalten zu Grid hinzufügen

  Alt 18. Sep 2008, 20:21
Zitat von toms:
Hallo Thomas

Eine Spalte kann so hinzugefügt werden (Spaltenzahl erhöhen)

 AdvStringGrid1.ColCount := AdvStringGrid1.ColCount + 1;
Vielen Dank für die schnelle Antwort. Im Prinzip klappt das so. Ergänzend würde ich gerne wissen, wie ich eine Spalte mit einem bestimmten Header erst finde und dann lösche oder eine Spalte an einer bestimmten Position hinzufüge.

Viele Grüße

Thomas
Thomas Gülden
Hof, Deutschland
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#5

Re: Spalten zu Grid hinzufügen

  Alt 18. Sep 2008, 20: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
  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 22:47 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