AGB  ·  Datenschutz  ·  Impressum  







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

Try-Except Hilfe

Ein Thema von eugene222 · begonnen am 25. Mär 2011 · letzter Beitrag vom 26. Mär 2011
Antwort Antwort
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#1

AW: Try-Except Hilfe

  Alt 25. Mär 2011, 14:48
AFAIK gab es in Delphi 5 weder TryStrToFloat noch StrToFloatDef.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
alfold

Registriert seit: 29. Jun 2010
Ort: Neustrelitz
393 Beiträge
 
Delphi 7 Enterprise
 
#2

AW: Try-Except Hilfe

  Alt 25. Mär 2011, 15:01
Im onkeypress kannst Du sowas verwenden
if not (key in ['0'..'9',#8, '.', ',', '-' ]) then key := #0;
es werden nur zahlen 0-9, backspace, punkt, komma und minus zugelassen.

so als Alternative

alfold
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#3

AW: Try-Except Hilfe

  Alt 25. Mär 2011, 15:10
Im onkeypress kannst Du sowas verwenden
if not (key in ['0'..'9',#8, '.', ',', '-' ]) then key := #0;
Dann gehen aber auch Eingaben wie
Code:
32098,32--43,32-44.3294.3-24
Die Lösung von jfheins würde ich bevorzugen, allerdings ließe sich das ja auch kombinieren.
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#4

AW: Try-Except Hilfe

  Alt 25. Mär 2011, 15:22
Wie wäre es denn so (über das Leeren des Edits kann man sich ja streiten, aber das ist nicht meine Sache)?:
Delphi-Quellcode:
//Für ältere Delphis unelegant implementiert
function TryStrToFloat(const s: string; out Number: double): Boolean;
begin
  try
    Number := StrToFloat(s);
    Result := true;
  except
    Result := false;
  end;
end;

procedure TForm5.Edit1Change(Sender: TObject);
var
  Zahl: double;
begin
  if (Sender is TEdit) and (TEdit(Sender).Text <> '') and (TEdit(Sender).Text <> '-') then
    if not TryStrToFloat(TEdit(Sender).Text, Zahl) then
      TEdit(Sender).Text := '';
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.386 Beiträge
 
Delphi 12 Athens
 
#5

AW: Try-Except Hilfe

  Alt 25. Mär 2011, 18:18
AFAIK gab es in Delphi 5 weder TryStrToFloat noch StrToFloatDef.
Ob der TE wirklich D5 verwendet, sei mal dahingestellt, denn D5 ist hier Standard, also steht immer dann da, wenn man da nix angegeben hat.

> Daniel hat ja nicht auf mich gehört, und keine anderere Vorauswahl eingebaut.

Solange eugene222 also nix anderes sagt, geh ich einfach davon aus, daß er nichts geziehlt angegeben hat.
PS: Ein Eintrag im Profil hätte dieses jetzt aber klären können.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.660 Beiträge
 
Delphi 12 Athens
 
#6

AW: Try-Except Hilfe

  Alt 25. Mär 2011, 18:37
Im Ausgangspost ist explizit Delphi 5 angegeben.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
eugene222

Registriert seit: 24. Mär 2011
11 Beiträge
 
#7

AW: Try-Except Hilfe

  Alt 25. Mär 2011, 20:20
Ich war weg, hab jetzt kurz eure Beiträge kurz überflogen. Ich habe die Delphi Version 7. Ich werde das ändern. Es wird als Standart V. 5 angegeben. Ich habe das nicht bemerkt. Morgen werd ich die Beiträge nochmal durchlesen und es ausprobieren, da ich jetzt erstmal schlafen gehe.
Naja aber Danke für eure Hilfe bis jetzt.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#8

AW: Try-Except Hilfe

  Alt 26. Mär 2011, 09:28
Dein Ansatz funktioniert ganz einfach deshalb nicht, weil nach der Eingabe des führenden '-' der Code in den Except-Teil springt und das Vorzeichen wieder entfernt.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
eugene222

Registriert seit: 24. Mär 2011
11 Beiträge
 
#9

AW: Try-Except Hilfe

  Alt 26. Mär 2011, 13:16
Ich hab das von DeddyH ausprobiert und es funktioniert einwandfrei. Ich werd jetzt erstmal versuchen den kleinen Code komplett zu verstehen. Naja vielen Dank an alle!

Ich hab das jetzt anders gelöst. Die Schrift wird rot wenn es falsch ist und Grün wenn die Eingabe richtig ist. Wenn alle Editfelder OK sind, wird der Button aktiviert, sonst deaktiviert.

Dieses Thema kann geschlossen werden. Danke an alle.

Geändert von eugene222 (26. Mär 2011 um 15:47 Uhr)
  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 11:10 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