Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Eingabe als Variable speichern???? (https://www.delphipraxis.net/30009-eingabe-als-variable-speichern.html)

taza 18. Sep 2004 10:43


Eingabe als Variable speichern????
 
Ich würde es gerne schaffen, dass ich das, was ich in einem Editfeld eingebe als Variable umwandeln kann und es so in Formeln bzw dann in der Ausgabe verwenden kann !!!!!

Weiß da vielleicht jemand Rat ? :?

Meflin 18. Sep 2004 10:45

Re: Eingabe als Variable speichern????
 
einfach im OnChange ereignis des editfeldes den wert der variable mit dem inhalt des editfeldes gleichsetzen. die variable sollte nur global sein, da du sonst wenig damit anfangen werden kannst...

SirThornberry 18. Sep 2004 10:49

Re: Eingabe als Variable speichern????
 
Zitat:

Zitat von Meflin
... die variable sollte nur global sein, da du sonst wenig damit anfangen werden kannst...

Ich hoffe du meinst nicht wirklich "global" sondern das die Variable in der Klassendeclaration declariert werden soll

Niels 18. Sep 2004 10:50

Re: Eingabe als Variable speichern????
 
Hallo!

Wenn ich dich richtig verstehe, liegt dein Problem darin, dass du mit dem Text nicht rechnen kannst. Dabei wird dir die Funktion StrToInt, welche einen String in einen Integer umwandelt bzw die Funktion StrToFloat, welche den String in eine Fließkommazahl umwandelt helfen. Beide Funktionen können jedoch Fehlermeldungen bringen, wenn der Text nicht mit dem Datentyp übereinstimmt (also beispielsweise Buchstaben enthält o.ä.).

Auf den Inhalt des Edit-Feldes greifst du mit FormX.EditX.Text zu.

himitsu 18. Sep 2004 11:03

Re: Eingabe als Variable speichern????
 
Zitat:

Zitat von Niels
Beide Funktionen können jedoch Fehlermeldungen bringen, wenn der Text nicht mit dem Datentyp übereinstimmt (also beispielsweise Buchstaben enthält o.ä.).

Dann könnte er immernoch auf StrToIntDef und StrToFloatDef umsteigen, die haben ja keine Fehlermeldungen ;)

taza 18. Sep 2004 11:24

Re: Eingabe als Variable speichern????
 
An sich hört sich das ja ziemlich einfach an, aber das Problem ist, dass wenn ich Edit1.Text und eine Variable gleichsetze, die Fehlermeldung kommt: Inkompatible Typen 'String' und 'Integer' !

himitsu 18. Sep 2004 11:38

Re: Eingabe als Variable speichern????
 
Weswegen du ja auch den Typen umwandeln sollst :zwinker:

Delphi-Quellcode:
var x: Integer;

procedure TForm1.Edit1Change(Sender: TObject);
begin
  x := StrToIntDef(Edit1.Text, 0);
  {oder}
  x := StrToIntDef(TEdit(Sender).Text, 0);
end;

alcaeus 18. Sep 2004 12:04

Re: Eingabe als Variable speichern????
 
Hi taza,

die Funktion Delphi-Referenz durchsuchenTryStrToInt macht dasselbe und bringt dir evtl. einen Fehler:
Delphi-Quellcode:
var
  Text: String;
  Zahl: Integer;
begin
  Text := '450a'; //das 'a' wird einen Fehler erzeugen
  if TryStrToInt(Text, Zahl) then
    ShowMessage('Kein Fehler')
  else
    ShowMessage('Fehler!');
end;
Greetz
alcaeus

taza 18. Sep 2004 14:12

Re: Eingabe als Variable speichern????
 
Vielen Dank für die vielen und vorallem schnellen Antworten, ich hab's jetzt hinbekommen !!!!

Bis ich wieder eine neue Frage habe !!!!! :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:09 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