AGB  ·  Datenschutz  ·  Impressum  







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

Problem mit IP-Eingabefld

Ein Thema von FriFra · begonnen am 1. Aug 2009 · letzter Beitrag vom 1. Aug 2009
 
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#10

Re: Problem mit IP-Eingabefld

  Alt 1. Aug 2009, 14:52
Ich würde empfehlen, das IP Address Control überhaupt nicht zu verwenden.
Auf den ersten Blick mag es logisch sein, eine streng formatierte Eingabe zu präsentieren.
Aber wenn man selbst das Control benützt, dann nerven die Einschränkungen doch gewaltig.
* Copy & Paste funktioniert nicht.
Man steckt immer in der ersten Zahl vor dem ersten Punkt fest und muss dann die IP-Adresse ABTIPPEN.
Also ich hasse es wenn ich eine IP abtippen muss.
* keine Möglichkeit einen Rechnernamen einzugeben
ich möchte bitteschön einen Rechnernamen eingeben können; das Programm soll die Namensauflösung durchführen
und die Eingabe durch die IP Adresse ersetzen. Soviel Komfort muss sein.
* Control reagiert nicht auf den Punkt
ich bin immer etwas irritiert, wenn ich die erste Zahl eingegeben habe und dann den Punkt eingebe:
nichts passiert
man muss Pfeil nach rechts drücken um zur 2. Zahl zu kommen.
Das Control sollte sich dem Benutzer anpassen nicht umgekehrt.

Alternative Lösung:
* ein normales TEdit verwenden
* das Editfeld zeigt folgenden Inhalt [ . . . ] solange es nicht den Fokus hat
und noch keine Eingabe getätigt wurde. Damit wird dem Benutzer gezeigt: "hier eine IP eingeben"
* erhält das Edit den Fokus, wird der Inhalt [ . . . ] gelöscht (Event OnEnter)
* wird das Feld verlassen (Event OnExit) wird geprüft, ob es sich um eine vollständige und korrekte IP handelt.
Sollte das Feld 3 Punkte und nur Ziffern enthalten, aber keine gültige IP sein - Exception werfen
Enthält das Feld genau 8 Hexzeichen? Umwandeln in dezimale IP.
Ansonsten wird versucht eine Namensauflösung durchzuführen.
Falls Namensauflösung erfolgreich: IP in Editfeld kopieren
Falls Namensauflösung nicht erfolgreich: Exception werfen (Feld nicht verlassen)


Diese Lösung verwendet keine Low-Lewel-Funktionen und ist auf jeder Windowsversion und sogar anderen Betriebssystemen lauffähig.

@Matze: Hey, das wollte ich auch schreiben, hatte es nur noch nicht abgeschickt
fork me on Github
  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 18: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