Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Problem: Array-Typ erforderlich (https://www.delphipraxis.net/110377-problem-array-typ-erforderlich.html)

SirThornberry 17. Mär 2008 11:00

Re: Problem: Array-Typ erforderlich
 
Am besten verrätst du uns was das Ziel des Codes sein soll. Denn so wie er jetzt ist macht er keinen Sinn außer das dein Prozessor etwas zu tun hat :-)
Delphi-Quellcode:
Edit1.Text:=a; //a ist undefiniert - dank des compilers der den string initialisiert ist a '' und somit steht dann in Edit1 nichts
b:=strtoint(a); //hier kracht es später weil '' keine gültige zahl ist
c[b]:=Edit2.Text; //Edit2.Text ist ein String, dein Array hingegen vom Typ Integer. Ein String ist was anderes als ein Integer und somit geht die Zuweisung nicht

Arrayuser 17. Mär 2008 11:03

Re: Problem: Array-Typ erforderlich
 
Ok

Das programm soll beim start zufallszahlen von 0 biss 99 speichern.
Und zwei editfelder dienen dazu, dass ich in einen die nummer des zufallszahls eingebe und das andere editfeld mir diese zufallzahl selbst zeigt.

hoffe es ist verständlich

Arrayuser 17. Mär 2008 11:26

Re: Problem: Array-Typ erforderlich
 
hab das jetzt so gemacht:
Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    Label1: TLabel;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Label2: TLabel;
    Label3: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure Edit2Change(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var a,b : integer;
     zufall : array[1..10]of integer;
begin
randomize;
a:=1;
for a:=1 to 10 do
begin
StringGrid1.Cells[a-1,0]:=inttostr(a);
b:=random(100);
zufall[a]:=b;
end;
edit1.Text:='?';
edit2.Text:='?'; //Fehlermelding: Im Project Project1.exe ist eine Exception der Klasse EConverError aufgetreten. Meldung "?' ist kein gültiger Integerwert'. Wieso? vorher ging es doch alles, die ' ' stehen doch da!
end;

procedure TForm1.Edit2Change(Sender: TObject);
var  a : string;
      b,d : integer;
      c : array[0..9] of integer;
begin
a:=Edit1.Text;
b:=strtoint(a);
c[b]:=d;
Edit2.Text:=inttostr(d);
end;

end.

Aurelius 17. Mär 2008 11:30

Re: Problem: Array-Typ erforderlich
 
Die Fehlermeldung wird eher im OnChange des Edit2 kommen ;)
Delphi-Quellcode:
a:=Edit1.Text;
b:=strtoint(a);
Wenn a ein '?' ist kann es nat. nicht in integer umgewandelt werden ;)

Arrayuser 17. Mär 2008 11:33

Re: Problem: Array-Typ erforderlich
 
Delphi-Quellcode:
procedure TForm1.Edit1Change(Sender: TObject);
var  a : string;
      b,d : integer;
      c : array[0..9] of integer;
begin
a:=Edit1.Text;
b:=strtoint(a);
c[b]:=d;
Edit2.Text:=inttostr(d);
end;
das soll doch nur beim OnChange gehen

Delphi-Quellcode:
edit1.Text:='?';
edit2.Text:='?';
ist bei FormCreate

oder hab cih da was falsch gemacht?

mkinzler 17. Mär 2008 11:35

Re: Problem: Array-Typ erforderlich
 
Entweder die Konvertierung in try..except einschließen oder TryStrToInt() verwenden

Arrayuser 17. Mär 2008 11:45

Re: Problem: Array-Typ erforderlich
 
In der Schule ging irgendwie alles, zuhause geht aber nie was :(

Arrayuser 17. Mär 2008 11:50

Re: Problem: Array-Typ erforderlich
 
Wo soll ich TryStrToInt() einsetzen?

mkinzler 17. Mär 2008 11:54

Re: Problem: Array-Typ erforderlich
 
Delphi-Quellcode:
if not TryStrToInt(a,b) then //Hier auf Fehler reagieren

Arrayuser 17. Mär 2008 12:01

Re: Problem: Array-Typ erforderlich
 
das bringt mich leider nicht weiter.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:59 Uhr.
Seite 2 von 5     12 34     Letzte »    

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