AGB  ·  Datenschutz  ·  Impressum  







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

Wertebereich prüfen und fehler abfangen

Ein Thema von DJAYS · begonnen am 10. Aug 2006 · letzter Beitrag vom 10. Aug 2006
 
Benutzerbild von Alexander Roth
Alexander Roth

Registriert seit: 17. Mai 2004
Ort: Kenn
574 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Wertebereich prüfen und fehler abfangen

  Alt 10. Aug 2006, 15:40
Hi, vielleicht hilft dir das weiter:
Ich benutze diese Prozeduren, die ich mal geschrieben habe,l jetzt so gut wie in jedem Programm.

Delphi-Quellcode:
{-----------------------------------------------------------------------------
  Description:  Löscht Zeichen die da nicht reinpassen
  Procedure:    korrigiere
  Arguments:    var s:String; const zeichen:Tsetofchar
  Result:      None
  Detailed description:
-----------------------------------------------------------------------------}

procedure korrigiere(var s:String; const zeichen:Tsetofchar=['0'..'9','-',',']);
var c : word;
begin
  c:=1;
  while c<= length(s) do
    begin
    if not(s[c] in zeichen) then
      delete(s,c,1)
    else
      inc(c);
    end;
end;
{-----------------------------------------------------------------------------
  Description:  Direkt edite Korrigieren
  Arguments:    var edit:Tedit; const zeichen:Tsetofchar=['0'..'9','-',',']
-----------------------------------------------------------------------------}

procedure korrigiere(var edit:Tedit; const zeichen:Tsetofchar=['0'..'9','-',',']);
var s:string;
begin
  s:=edit.Text ;
  korrigiere(s,zeichen);
  edit.Text:=s;
end;
{-----------------------------------------------------------------------------
  Description:  Korrigiere real Zahl
  Arguments:    var r:real;  max,min:real
-----------------------------------------------------------------------------}

procedure korrigiere(var r:real; min,max:real);
var temp:integer;
begin
  if max<min then
    begin
    temp:=min;
    min:=max;
    max:=temp;
    end;

  if r<min then r:=min;
  if r>max then r:=max;
end;
{-----------------------------------------------------------------------------
  Description:  Korrigiere Word Zahl
  Arguments:    var r:word;  max,min:word
-----------------------------------------------------------------------------}

procedure korrigiere(var w:word; min,max:word);
var temp:integer;
begin
  if max<min then
    begin
    temp:=min;
    min:=max;
    max:=temp;
    end;

  if w<min then w:=min;
  if w>max then w:=max;
end;
{-----------------------------------------------------------------------------
  Description:  Korrigiere Integer Zahl
  Arguments:    var r:word;  max,min:Integer
-----------------------------------------------------------------------------}

procedure korrigiere(var w:integer; min,max:integer);
var temp:integer;
begin
  if max<min then
    begin
    temp:=min;
    min:=max;
    max:=temp;
    end;

  if w<min then w:=min;
  if w>max then w:=max;
end;
//Edit: Kleine Korrektur des Codes
Alexander Roth
Ich bin umgestiegen auf: Lazarus und Ubuntu! Alles OpenSource!

Besuch doch mal: www.roth.us.ms
  Mit Zitat antworten Zitat
 


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 17:29 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