AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Strings in ein Array speichern

Ein Thema von Keiko · begonnen am 13. Apr 2005 · letzter Beitrag vom 13. Apr 2005
Antwort Antwort
Keiko

Registriert seit: 1. Okt 2003
5 Beiträge
 
#1

Strings in ein Array speichern

  Alt 13. Apr 2005, 18:37
Hallo,
wir müssen ein Programm machen. EIgentlich ganz simpel. WIr haben ein Edit-Feld, wo wir Sachen eingeben und einen Button der die Dinge, die man eingibt, abspeichert.
Man gibt etwas ins Edit-Feld ein, klickt auf Speichern, und diese Daten werden in ein Array gesepcihert. Jedesmal muss das Array verlängert werden. Dann wenn man auf einen anderen Button Names "Ausgabe" klickt, soll das ganze in einem MemoFeld ausgegeben werden, was gespeichert wurde.
Das ganze habe ich versucht, weiß aber net warum es nicht funktioniert. Kann mir jemand dabei helfen?

Delphi-Quellcode:
 
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Bspeichern: TButton;
    Bausgabe: TButton;
    Eeingabe: TEdit;
    Mausgabe: TMemo;
    Bende: TButton;
    procedure BendeClick(Sender: TObject);
    procedure BspeichernClick(Sender: TObject);
    procedure BausgabeClick(Sender: TObject);
    procedure anfang;

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  i:integer;
  Feld:array of string;
implementation

{$R *.dfm}

procedure anfang;
begin
i:=0;
setlength(Feld,1);
end;

procedure TForm1.BendeClick(Sender: TObject);
begin
halt;
end;

procedure TForm1.BspeichernClick(Sender: TObject);
begin
Feld[i]:=Eeingabe.Text;
i:=i+1;

end;

procedure TForm1.BausgabeClick(Sender: TObject);
begin
For i:=0 to length(Feld)-1 do
MAusgabe.Lines.Add:=Feld[i];
end;

end.
Ich weiß, dass ein Fehler mit der procedure anfang zu tun hat. Da steht irgendwo etwas falsches. Da gabs nämlich einen Error.
Kann mir bitte jemand helfen?
  Mit Zitat antworten Zitat
Waldteufel
(Gast)

n/a Beiträge
 
#2

Re: Strings in ein Array speichern

  Alt 13. Apr 2005, 18:40
Hi.

3 Dinge:

1. Welcher Fehler ist es denn?
2. Wahrscheinlich hast du vergessen, das Array zu vergrößern...
3. Nimm Close; statt Halt;
  Mit Zitat antworten Zitat
Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#3

Re: Strings in ein Array speichern

  Alt 13. Apr 2005, 18:45
Delphi-Quellcode:
procedure TForm1.BspeichernClick(Sender: TObject);
begin
  Feld[i]:=Eeingabe.Text;
  i:=i+1;
  setlength(Feld, i);
end;
Ansonsten noch eine kleine Anmerkung: Es heißt "beenden" und nicht "benden"
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#4

Re: Strings in ein Array speichern

  Alt 13. Apr 2005, 18:49
Zitat:
procedure anfang;
procedure TForm1.Anfang; .


PS: Globale Variablen sind böse , ab damit in den private-Teil der Form.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Keiko

Registriert seit: 1. Okt 2003
5 Beiträge
 
#5

Re: Strings in ein Array speichern

  Alt 13. Apr 2005, 18:49
Zitat von Keiko:
Hallo,
Delphi-Quellcode:
 

MAusgabe.Lines.Add:=Feld[i];
end;
Genau da kommt ein Fehler:
[Warning] Unit1.pas(54): For loop control variable must be simple local variable
[Error] Unit1.pas(55): Not enough actual parameters
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'
  Mit Zitat antworten Zitat
Waldteufel
(Gast)

n/a Beiträge
 
#6

Re: Strings in ein Array speichern

  Alt 13. Apr 2005, 18:51
Hi.

Das Problem lässt sich so lösen:

Delphi-Quellcode:
procedure TForm1.BausgabeClick(Sender: TObject);
var
  i2 : integer;
begin
  for i2 := 0 to length(Feld)-1 do
    MAusgabe.Lines.Add(Feld[i2]);
end;
  Mit Zitat antworten Zitat
Maximus

Registriert seit: 26. Okt 2003
169 Beiträge
 
#7

Re: Strings in ein Array speichern

  Alt 13. Apr 2005, 18:52
Delphi-Quellcode:
 

MAusgabe.Lines.Add(Feld[i]);
So muss es heißen
  Mit Zitat antworten Zitat
stefan2005

Registriert seit: 30. Sep 2003
Ort: Puchheim
250 Beiträge
 
Delphi 6 Personal
 
#8

Re: Strings in ein Array speichern

  Alt 13. Apr 2005, 18:53
hi,
dann würde ich am besten in die Procedure, in der die Schleife steht, eine lokale Variable (zwischen "procedure ...;" und "begin") namens "i" einfügen !

cu,
stefan2005
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#9

Re: Strings in ein Array speichern

  Alt 13. Apr 2005, 18:55
Da sieht man mal wieder, wozu schlechte Namensgebung von Variablen führt.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Keiko

Registriert seit: 1. Okt 2003
5 Beiträge
 
#10

Re: Strings in ein Array speichern

  Alt 13. Apr 2005, 19:00
DANKE!!
Es funktioniert.
Vielen Dank euch allen.

Nur hab ich jetzt oben drüber ne leer Zeile im Memo bevor die ganzen Sachen ausgegeben werden, aber das is egal.

Danke.
*Happy*
  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 21:42 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