![]() |
array of TStringgrid
Hallo zusammen,
ich such grad nach einer Lösung um auf verschieden Stringgrids zuzugreifen ohne ewig IF Abfragen zu bauen. Ich habe mehrere Stringgrids die ich gerne über einen Index ansprechen würde Momentan mach ich das zum Beispiel so
Delphi-Quellcode:
ich würde das gern aber so lösen
Add_Werte2Chart(werte_orte,Chart1.Series[0]);
Add_Werte2Chart(werte_fehlercodes,Chart1.Series[1]); Add_Werte2Chart(werte_Materialnummer,Chart1.Series[2]); ... ... Add_Werte2Chart(Quelle: TStringGrid; ZielSerie: TChartSeries);
Delphi-Quellcode:
Die const Definition akzeptiert mir aber der Compiler nicht, was ich bräuchte wär also wie ich in das Array die Pointer zu den Grids bekomme, ging das über das Handle
const gridliste: Array[0..2] of TStringgrid=(werte_orte,werte_fehlercodes,werte_Materialnummer); //Geht aber nicht
... ... Add_Werte2Chart(gridliste[i],Chart1.Series[h]); Wäre über eine Lösung dankbar Gruß Matthias |
AW: array of TStringgrid
Delphi-Quellcode:
var
gridliste: array [0..2] of TStringGrid; // zu einem von dir wählbaren Initzialisierungszeitpunkt gridListe[0] := werte_orte; gridliste[1] := werte_fehlercodes; gridliste[2] := werte_Materialnummer; |
AW: array of TStringgrid
Mach es doch nicht über ein konstantes Array, sondern über ein dynamisches oder eine Objektliste.
Allerdings würde ich dann überlegen, ob du bei
Delphi-Quellcode:
nicht einfach nur noch i und h übergibst, irgendwie sieht das so nämlich unschön aus.
Add_Werte2Chart(gridliste[i],Chart1.Series[h])
Eventuell wäre noch eine Überlegung die Daten nicht aus dem StringGrid zu nehmen, sondern aus deiner ursprünglichen Datenquelle, mit der zuvor schon das StringGrid gefüllt wurde, sprich es macht evtl. Sinn die Datenhaltung von der GUI zu trennen. |
AW: array of TStringgrid
Da war einer schneller :-)
Mein Vorschlag bläst in dasselbe Horn. Mach einfach eine Variable daraus:
Delphi-Quellcode:
und dann im FormCreate mit Leben füllen:
var
Form2: TForm2; gridliste : Array[0..2] of TStringGrid;
Delphi-Quellcode:
procedure TForm2.FormCreate(Sender: TObject);
var i : Integer; begin for I := 0 to 2 do gridliste[i] := TStringGrid.Create(Self); //oder deine [U]vorher erzeugten[/U] Listen werte_orte,werte_fehlercodes,werte_Materialnummer zuweisen //gridliste[0] := werte_orte; //... end; |
AW: array of TStringgrid
OK, danke dafür
Direkt aus der Datenquelle geht nicht, bzw. nur sehr umständlich. Das mit der Zuweisung zum Array reicht mir als Lösung. Mehr Hirn wird ich da nicht mehr investieren. Gruß Matthias |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:28 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