![]() |
komische Fehlermeldung, was bedeutet das?
Kann mir vielleicht jemand weiterhelfen, was das hier bedeutet?
Zitat:
|
Re: komische Fehlermeldung, was bedeutet das?
Du hast eine Schleifenvariable i definiert und greifst nach Ablauf der Schleife darauf zu.
|
Re: komische Fehlermeldung, was bedeutet das?
Du scheinst ausserhalb der Schleife die Laufvariable zu verwenden. Wie sieht der Code aus? Ist i innerhalb der Grenzen?
|
Re: komische Fehlermeldung, was bedeutet das?
Delphi-Quellcode:
das ist der source code...
procedure TForm1.Button1Click(Sender: TObject);
Var i,h:integer; begin Zufalls_Zahlen(Anzahl_Zufallszahlen); WortWandel; For i:=1 to Anzahl_Zufallszahlen do begin memo1.Lines.Add(IntToStr(Zufallszahlen[i])); end; For h:=1 to Anzahl_Zufallszahlen do begin memo1.lines.add(WList1.word[h]); end; end; |
Re: komische Fehlermeldung, was bedeutet das?
Also 1. traue ich mich fast wetten, dass es for i := 0 to xxx - 1 heißen müsste, zweitens: Ist das der komplette Code? Irgendwo musst du doch i außerhalb der Schleife verwenden :gruebel:
|
Re: komische Fehlermeldung, was bedeutet das?
Ausserdem ist der Wertebereich des Arrays nicht ersichtlich
|
Re: komische Fehlermeldung, was bedeutet das?
und könntest du diese seltsamen funktionen, die ja offensichtlich aus irgendeiner drittunit stammen, mal erklären? was macht denn dieses wortwandel? v.a. weil es keine parameter hat.
aber helfen kann man dir nur, wenn du den kompletten code postest, oder zumindest die teile wo die arrays definiert werden, und falls sie dynamisch sind auch den teil wo ihnen eine dimension gegeben wird (der setlength-teil). |
Re: komische Fehlermeldung, was bedeutet das?
hab einfach keine lust auf: :glaskugel:
|
Re: komische Fehlermeldung, was bedeutet das?
Delphi-Quellcode:
so, das ist der komplette code...
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, StdCtrls, Unit3; type TForm1 = class(TForm) MainMenu1: TMainMenu; Hauptmenue1: TMenuItem; Aufgaben1: TMenuItem; Highscores1: TMenuItem; Accountladen1: TMenuItem; N1: TMenuItem; Accountspeichern1: TMenuItem; N2: TMenuItem; ENDE1: TMenuItem; Wrterlisten1: TMenuItem; Zahllisten1: TMenuItem; sonstiges1: TMenuItem; N3: TMenuItem; sonstiges2: TMenuItem; Reihenfolge1: TMenuItem; Drucheinander1: TMenuItem; MarathonTest1: TMenuItem; Spielkarten1: TMenuItem; N4: TMenuItem; Einfhrung1: TMenuItem; Label1: TLabel; Edit1: TEdit; Label2: TLabel; Edit2: TEdit; Button1: TButton; Memo1: TMemo; procedure ENDE1Click(Sender: TObject); procedure Reihenfolge1Click(Sender: TObject); procedure FormShow(Sender: TObject); procedure Reihenfolge; procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Zufalls_Zahlen(Anzahl:integer); procedure Button1Click(Sender: TObject); procedure WortWandel; private wordlist1: TextFile; Anzahl_Zufallszahlen: integer; wie_viele_zeilen: integer; public { Public declarations } end; var Form1: TForm1; Zufallszahlen:Array[1..250] of integer; type wordlist = class private NumberOfWords: integer; word: array[1..100] of string; end; var WList1: wordlist; implementation {$R *.dfm} procedure TForm1.ENDE1Click(Sender: TObject); begin close; end; procedure TForm1.Reihenfolge1Click(Sender: TObject); begin Unit3.OKBottomDlg1.ShowModal; Anzahl_Zufallszahlen:=StrToInt(Unit3.OKBottomDlg1.Edit1.text); end; procedure TForm1.Reihenfolge; begin //weitermachen end; procedure TForm1.Zufalls_Zahlen(Anzahl:integer); Var i: integer; begin randomize; for i:=1 to Anzahl_Zufallszahlen do begin Zufallszahlen[i]:=random(wie_viele_zeilen+1); end; end; procedure TForm1.FormShow(Sender: TObject); begin WList1:= wordlist.Create; wie_viele_zeilen:=0; AssignFile(wordlist1,'wordlist1.txt'); reset(wordlist1); while not EoF(wordlist1) do begin readln(wordlist1); inc(wie_viele_zeilen); end; CloseFile(wordlist1); end; procedure TForm1.WortWandel; var zeile: string; i,h,a: integer; begin WList1.NumberOfWords:=0; // Textdatei wird lesbar gemacht AssignFile(wordlist1,'wordlist1.txt'); reset(wordlist1); // Einlesen bestimmter Zeilen der Textdatei a:=1; for h:=1 to Anzahl_Zufallszahlen do begin for i:=1 to (Zufallszahlen[a]-1) do begin readln(wordlist1,zeile); WList1.word[i]:=zeile; inc(a); end; end; WList1.NumberOfWords:=a; CloseFile(wordlist1); end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin WList1.Free; end; procedure TForm1.Button1Click(Sender: TObject); Var i,h:integer; begin Zufalls_Zahlen(Anzahl_Zufallszahlen); WortWandel; For i:=1 to Anzahl_Zufallszahlen do begin memo1.Lines.Add(IntToStr(Zufallszahlen[i])); //--->>> hier is der FEHLER end; For h:=1 to Anzahl_Zufallszahlen do begin memo1.lines.add(WList1.word[h]); end; end; end. was das macht: ich bekomm ne liste von zufallszahlen, voneiner bestimmten angegebenen Anzahl die sich zwischen 1 und der anzahl der zeilen eines textdokuments befinden... anhand dieser zahlen wird eine zufällige zeile des textdokuments angewählt, das wort wird in meine eigene class gespiechert. wortwandel sucht nach den zufallszahlen die wörter aus der textdatei... hoffe ihr könnt mir helfen, is ziemlich viel code... |
Re: komische Fehlermeldung, was bedeutet das?
und in welcher zeile tritt der fehler denn auf? :glaskugel:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 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