Einzelnen Beitrag anzeigen

Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#1

335 Stringlist einträge nicht mehr?

  Alt 10. Apr 2005, 00:57
Delphi-Quellcode:
unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, Fechter, StdCtrls;
const Start_geld = 1000;
      Start_Fechter = 335; //max 335
      Start_Trainer = 1;
      Start_Kassier_Proz = 10;
type
  TForm1 = class(TForm)
    Showing: TStatusBar;
    Test: TMemo;
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  FechterListe : Array [1..200] of TFechter;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var i : Integer;
    TestL : TStringlist;
begin
  // Initialisierung
  For i := 1 to Start_Fechter do
    FechterListe[i] := TFechter.Create;

  TestL := TStringlist.Create;
for i := 1 to Start_Fechter do
begin
  TestL := FechterListe[i].getInfo;
  Test.Lines.Add('Fechter ' + IntToStr(i));
  Test.Lines.Add('Name: ' + TestL[0] + ' ' + TestL[1]);
  Test.Lines.Add('Geschlecht: ' + TestL[2]);
  Test.Lines.Add('Alter: ' + TestL[3]);
  Test.Lines.Add('Talent: ' + TestL[4]);
  Test.Lines.Add('Kondition: ' + TestL[5]);
  Test.Lines.Add('Wille: ' + TestL[6]);
  Test.Lines.Add('Beinarbeit: ' + TestL[7]);
  Test.Lines.Add('Erfahrung: ' + TestL[8]);
  Test.Lines.Add('----------------');
end;

  TestL.Destroy;

  Showing.Panels[0].text := 'Geld: ' + IntToStr(Start_Geld);
  Showing.Panels[1].text := 'Fechter: ' + IntToStr(Start_Fechter);
  Showing.Panels[2].text := 'Trainer: ' + IntToStr(Start_Trainer);

end;

end.

Wenn ich bei start_Fechter jetzt 336 hinschreibe kommt am ende des Porgrammes(beim schließen) dieser fehler:

Zitat:
---------------------------
Error
---------------------------
Runtime error 216 at 009A489C
---------------------------
OK
---------------------------

wenn ich noch mehr hinschreibe .. also 400 zb dann kommt am anfang beim starten des Programmes


Zitat:
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt Fechttrainer.exe ist eine Exception der Klasse EAccessViolation aufgetreten. Meldung: 'Zugriffsverletzung bei Adresse 009AA8F7. Schreiben von Adresse 011584BA'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
---------------------------
OK Hilfe
---------------------------
und

Zitat:
---------------------------
Fechttrainer
---------------------------
Zugriffsverletzung bei Adresse 009AA8F7. Schreiben von Adresse 011584BA.
---------------------------
OK
---------------------------
und am ende des programmes(im memo wird auch nichts angezeigt)

Zitat:
---------------------------
Error
---------------------------
Runtime error 216 at 009A489C
---------------------------
OK
---------------------------


liegt das daran dass das memo nicht mehr zeilen packen kann oder ist das was anderes



Delphi 7 Enterprise





danke

Nico


ps.: die fechterunit macht nichts besonderes außer werte zufällig vergeben und mit eienr get methode abrufen lassen

ps2.: sehr schöne codeformatierung oder
Nico Müller
  Mit Zitat antworten Zitat