![]() |
JvPageControl erweitern
Hallo leute, hab da ein problem
ich will während mein programm läuft, das pagecontrol erweitern. hab hier im forum zwar was gefunden aber da kommt immer nen fehler. das is meinn code bestellung ist ein formular
Code:
das problem jetzt ist, das er keine neuen tabsheets erstellt, kommt immer ein zugriffsfehler oder so.
anz_zeilen := DataSource1.DataSet.RecordCount;
for i := 1 to 10 do begin SetLength(TabSheets, succ(i)); TabSheets[i] := TTabSheet.Create(Bestellung.JvPageControl1); TabSheets[i].Parent := Bestellung.JvPageControl1; TabSheets[i].Name := 'ArtSheet'+InttoStr(i); TabSheets[i].Caption := DBGrid1.Fields[i].DisplayText; TabSheets[i].Tag := i; TabSheets[i].Visible := true; TabSheets[i].PageControl := Bestellung.JvPageControl1; end; |
Re: JvPageControl erweitern
Moin,
wenn du mit dynamischen Arrays arbeitest, dann ist das erste Element immer Null. Also setlength(TabSheets, 1) -> TabSheets[0].???? zu deinem Beispiel...
Delphi-Quellcode:
da in deinem Beispiel anz_zeilen gar nicht verwendet wurde, habe ich es hier mal mit eingebaut (hoffe das ist so, wie du es eigentlich benutzten wolltest). Wenn das so sein sollte, dann würde ich das Array einmal setzten (vor der Schleife) und dann in der Schleife nur noch initalisieren.
anz_zeilen := DataSource1.DataSet.RecordCount;
SetLength(TabSheets, anz_zeilen); for i := 1 to anz_zeilen do begin TabSheets[i-1] := TTabSheet.Create(Bestellung.JvPageControl1); TabSheets[i-1].Parent := Bestellung.JvPageControl1; TabSheets[i-1].Name := 'ArtSheet'+InttoStr(i); TabSheets[i-1].Caption := DBGrid1.Fields[i].DisplayText; TabSheets[i-1].Tag := i-1; TabSheets[i-1].Visible := true; TabSheets[i-1].PageControl := Bestellung.JvPageControl1; end; MfG Thorsten |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 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