AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi TadvStringGrid / Spalte von User setzen lassen
Thema durchsuchen
Ansicht
Themen-Optionen

TadvStringGrid / Spalte von User setzen lassen

Ein Thema von Jerry · begonnen am 17. Nov 2005 · letzter Beitrag vom 18. Nov 2005
Antwort Antwort
Jerry

Registriert seit: 24. Feb 2005
Ort: Schweiz/Thurgau
138 Beiträge
 
Delphi 2010 Professional
 
#1

TadvStringGrid / Spalte von User setzen lassen

  Alt 17. Nov 2005, 14:59
Hallo zusammen

Wer kennt sich mit der Komponente TAdvStringGrid aus?

Folgende Frage:

Ich habe 4 Spalten:

Spalte1 Spalte2 Spalte3 Spalte4

In den jeweiligen Zellen sind fixe Werte eingetragen, die bei Bedarf in andere Felder ausgelesen werden. Jetzt möchte ich dem User die Möglichkeit geben die Spalten nach seinen Wünschen anzuordnen.

Jetzt ist z.B: der Aufbau der 4 Spalten so:

Spalte4 Spalte3 Spalte2 Spalte1

Da jetzt aber bei Bedarf aufgrund dieser Spalten andere Felder gefüllt werden habe ich die Ursprungsreihenfolge nicht mehr.

Gibt es bei dieser Komponente einen entsprechenden Trick?

Ich habe nach langem Suchen folgenden Code gefunden:
Gemäss Hilfetext sollte der folgendes machen:

property UnSortedCells[i, j: Integer]: string;

Description

Allows access to cell content as if the cells were not moved by the sort.
It is required that InitSortXRef is called before doing the sort in order to use UnSortedCells.

Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
begin
  AdvStringGrid1.InitSortXRef;
  edit1.Text := AdvStringGrid1.UnSortedCells[0,1];
  edit2.Text := AdvStringGrid1.UnSortedCells[1,1];
  edit3.Text := AdvStringGrid1.UnSortedCells[2,1];
  edit4.Text := AdvStringGrid1.UnSortedCells[3,1];
  edit5.Text := AdvStringGrid1.UnSortedCells[4,1];}
end;
Dieser Code macht aber das selbe wie dieser Code:
Delphi-Quellcode:
procedure TForm1.Button3Click(Sender: TObject);
begin
    //
    edit1.Text := AdvStringGrid1.Cells[0,1];
    edit2.Text := AdvStringGrid1.Cells[1,1];
    edit3.Text := AdvStringGrid1.Cells[2,1];
    edit4.Text := AdvStringGrid1.Cells[3,1];
    edit5.Text := AdvStringGrid1.Cells[4,1];
end;
Was ist den jetzt der Unterschied, oder bin ich hier grundsätzlich auf dem falschen Weg?

Danke schon allen für Eure Lösungsansätze....
  Mit Zitat antworten Zitat
Jerry

Registriert seit: 24. Feb 2005
Ort: Schweiz/Thurgau
138 Beiträge
 
Delphi 2010 Professional
 
#2

Re: TadvStringGrid / Spalte von User setzen lassen

  Alt 18. Nov 2005, 07:13
mmm hat niemand eine Idee?
  Mit Zitat antworten Zitat
Jerry

Registriert seit: 24. Feb 2005
Ort: Schweiz/Thurgau
138 Beiträge
 
Delphi 2010 Professional
 
#3

Re: TadvStringGrid / Spalte von User setzen lassen

  Alt 18. Nov 2005, 13:25
habe heute ein kleines testprojektchen gemacht, wo dies nun klappt.

Für alle die auch mal so ein Problem haben....

Ich denke den Code könnte man noch optimieren.
Angehängte Dateien
Dateityp: zip projekt_521.zip (499,1 KB, 8x aufgerufen)
  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 12:54 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