AGB  ·  Datenschutz  ·  Impressum  







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

Hilfe mit value Befehl

Ein Thema von Maeuschen · begonnen am 19. Jun 2006 · letzter Beitrag vom 20. Jun 2006
Antwort Antwort
Seite 1 von 3  1 23      
Maeuschen
(Gast)

n/a Beiträge
 
#1

Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:04
Hallo zusammen!

letztens hat uns unser Lehrer gezeigt, wie man ein Programm absturzsicher machen kann. Verstanden hat es leider keiner und den Quelltext hat er auch nicht rausgegeben "Probiert das mal alleine". Prima, wie soll ich denn etwas programmieren, wenn ich nichteinmal den Ansatz kenne?

Das einzige, was ich mitbekam war, dass er irgendetwas mit Value schwafelte, mehr nicht.

Mein konkretes Problem ist jetzt: Was muss ich in den Quelltext eingeben, dass mit mein Programm nicht abstürzt, wenn ich ins Edit1-Feld nicht "4", sondern "vier" eingebe?

Danke an alle, die bis hier hergelesen haben und mir versuchen zu helfen
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:07
In eine Edit-Feld kannst du problemlos "vier" eingeben, da es ja einen String aufnimmt.
Ich weiß nicht, von was dein Lehrer geredet hat, ich könnte mir vorstellen, das er die .value Eigenschaft von Datenbankzugriffsobjekten gemeint hat welche Varianten sind.

[Edit: oder er hat den val()-Befeh gemeint]
Markus Kinzler
  Mit Zitat antworten Zitat
Maeuschen
(Gast)

n/a Beiträge
 
#3

Re: Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:11
Achso, sorry, das hätte ich erwähnen sollen
Die zahlen der beiden Editfelder muss man Multiplizieren, d.h ich habe ja schon stehen:

Edit1.text:=strtofloat(z1);
Edit2.text:=strtofloat(z2);
Ergebnis:=(z1*z2);
  Mit Zitat antworten Zitat
droppi
(Gast)

n/a Beiträge
 
#4

Re: Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:17
Aber wenn du die Zahlen multiplizieren willst muss das dann nich heißen:
Delphi-Quellcode:
z1:=strtofloat(Edit1.text);
z2:=strtofloat(Edit2.text);
Ergebnis:=(z1*z2);
Wenn du abfragen willst ob ein eingegebener Wert keine Zahl ist würd ich dir if...then... Empfehlen.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:17
Zitat:
Delphi-Quellcode:
Edit1.text:=strtofloat(z1);
Edit2.text:=strtofloat(z2);
Ergebnis:=(z1*z2);
geht wohl nicht:

Delphi-Quellcode:
z1 := strtofloat(Edit1.text);
z2 := strtofloat(Edit1.text);
Ergebnis := (z1*z2);
müßte es heißen oder besser

Delphi-Quellcode:
if (TryStrToFloat( Edit1.Text, z1)) and (TryStrToFloat( Edit2.Text, z2)) then
   Ergebnis:=(z1*z2)
else
   //Fehler;
Markus Kinzler
  Mit Zitat antworten Zitat
droppi
(Gast)

n/a Beiträge
 
#6

Re: Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:22
Ach genau . Naj wird Zeit dass es wieder Wochenende wird.
Jetzt hab ich doch gedacht du willst mich verbessrn naja.
  Mit Zitat antworten Zitat
Maeuschen
(Gast)

n/a Beiträge
 
#7

Re: Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:26
Delphi-Quellcode:
z1:=strtofloat(Edit1.text);
z2:=strtofloat(Edit2.text);
summe:=z1*z2;
Genau das steht jetzt bei mir ^^"

@mkinzler

Ist dein letzter Code jetzt der Code, der zum absturzsicheren Programm führt?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:29
Ja. Zumindest bezüglich dieser Typumwandlungen
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#9

Re: Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:33
also ich würde dir die verwendung eines try/except-Blockes empfehlen (falls ich dein Problem richtig verstanden habe, du wirst nicht gerade mit Informationen um dich)
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
andimx

Registriert seit: 14. Apr 2005
Ort: Hohenstein-Ernstthal
67 Beiträge
 
#10

Re: Hilfe mit value Befehl

  Alt 19. Jun 2006, 16:34
Man kann auch das OnKeyPress Event abfangen den Key Code (Wert der gedrückten Taste) analysieren:

Delphi-Quellcode:
procedure TfrmMain.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
 if not (Key in [#46, #48..#57, #8]) then Key := #0;
end;
Gruß
Andi
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 23:45 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