Einzelnen Beitrag anzeigen

Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#15

Re: wenn edit nicht dem format entspricht dann ... ??

  Alt 30. Mär 2006, 17:02
Zitat von delphineuling88:
ich will überprüfen ob edit dem hh:mm:ss format enspricht wenn das nicht so ist soll er ne nachricht zeigen ...[/delphi]
Also erst reagieren, wenn die Eingabe abgschlossen ist und sich letztenendes als falsch herausstellt ? Und den User zwingen, wieder von vorne anzufangen und dann andere Fehler zu machen ? Nene. Frage Murphy. So was ist doch in Delphi narrensicher im OnKeyPress zu regeln.

Delphi-Quellcode:
// Edit muß leer/richtig vorbesetzt sein, z.B. OI-Einstellung nicht auf Edit1
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if key <> #8 then begin
    if length (Edit1.Text) < 8 then begin
// ACHTUNG : hier ist Tastendruck noch nicht verarbeitet für Text, obwohl
// Taste selber bereits verfügbar ! Deshalb "[2,5]" und "< 8" !!
      if length (Edit1.Text) in [2,5] then begin
        if not (key in[':']) then
          key := #0;
      end
      else begin
        if not (key in ['0'..'9']) then
          key := #0;
      end;
    end
    else
      key := #0;
  end;
end;
Allerdings wäre damit auch als Zeiteingabe '99.99.99' möglich. Also muß das erste Zeichen noch auf 0..2 eingegrenzt werden, das 4. auf 0..5 usw.
Gruß
Hansa
  Mit Zitat antworten Zitat