| Autor |
Beitrag |
mexx
      
Beiträge: 1183
|
Verfasst: Mi 09.11.05 08:21
Hallo,
ich habe ein DBEdit-Feld welches nur zewi Werte eingetragen bekommen darf. Wie deklariere ich das am professionellsten?
gruß
|
|
digi_c
      
Beiträge: 1905
W98, XP
D7 PE, Lazarus, WinAVR
|
Verfasst: Mi 09.11.05 08:45
Du könntest mit dem OnkeyPress/OnkeyDown Ereignis arbeiten, so macht man das eigentlich.
Falls du eine Auswahl von zwei Werten machen willst, kannst du doch auch einfach eine Combobox nehmen, oder?
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 09.11.05 08:48
Ja, da will ich ja auch die Kontrolle hinlegen, aber ich dachte mir, es gibt doch sicherlich eine proffesionellere Variante als eine IF-Abfrage des Wertes? Immerhin dürfen ja auch nur 2 verschiedene Zahlen rein und keine anderen Zeichen. Ich dachte mir, es muss doch auch schöner zu lösen sein als ne IF-Abfrage und einen try-Block zum Abfangen von falschen Werten.
Muss ein Edit bleiben!
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 09.11.05 10:32
|
|
Martin1966
      
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Mi 09.11.05 10:46
Hallo!
mexx hat folgendes geschrieben: | | Ich dachte mir, es muss doch auch schöner zu lösen sein als ne IF-Abfrage und einen try-Block zum Abfangen von falschen Werten. |
Wenn nur zwei Werte eingetragen werden dürfen dann musst du halt eine Prüfung einbauen und eine Prüfung geht nun mal mit einer IF-Anweisung. Also genau DAS was du brauchst. Deswegen verstehen ich nicht was daran nicht "schön" sein soll.
Als "nicht schön" könnte man aus der Sicht des Anwendungsbenutzer aber die Eingabeform bezeichnen. Zwei RadioButtons sind für diese Eingabeart viel eleganter als ein Edit-Feld mit einer Prüfung.
Lg Martin
_________________ Ein Nutzer der Ecke
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 09.11.05 10:48
Ja, ist ja richtig, aber es MUSS nun mal leider ein Editfeld sein, auch wenn es gegen jede Logik geht.
|
|
Martin1966
      
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Mi 09.11.05 10:55
Hm... dann hast du aber irgendwo Mist gebaut (Designfehler?).
Warum "muss" es denn ein Editfeld sein?
_________________ Ein Nutzer der Ecke
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 09.11.05 11:00
Nicht ich, CHEFE!!!
Und CHEFE sagt, mach Editfeld!
Und was CHEFE sagt, ist richtig....
|
|
Martin1966
      
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Mi 09.11.05 11:04
Ah so läuft das bei Euch. Super! Naja, dann erspare ich mir mal jeglichen Kommentar.
Lg Martin
_________________ Ein Nutzer der Ecke
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 09.11.05 11:11
Ich weis, nicht korrekt aber ich bin nocht nicht lange hier, somit halte ich die Bälle flach und befolge zunächst nur Befehle, bis ich ein paar Steine im Brett habe.
|
|
Martin1966
      
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Mi 09.11.05 11:14
War ja auch nicht negativ auf dich bezogen sondern auf deinen Chef.
Aber trotzdem kannst du doch von Deinem Chef erwarten, dass er dir eine vernüftige Begrüdung für seine Entscheidung liefert. Aber jetzt werden wir hier Off-Topic. 
_________________ Ein Nutzer der Ecke
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 09.11.05 11:22
ICH: "Warum Edit und nicht GroupBox?"
CHEF: "Weil es möglich ist, das sich die Zahl der möglichen Werte irgendwann erhöht. Wäre dies der Fall so müsse man im Quelltext Änderungen vornehmen."
ICH: "Wenn ich auf das Editfeld eine Prüfung mache, ob die Inhalte auch korekte Inhalte sind, so müsse man die Änderung der möglichen Werte auch im Quelltext bei der Prüfung ändern. Zwangsläufig kommt es auf eine Änderung des Quellstextes herraus, wenn man die Anzahl ändert."
CHEF: "..."
GOIL!!!!!!
PS: Off Topic? Solange es der Moderator net merkt! 
|
|
Martin1966
      
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Mi 09.11.05 11:32
Eine Änderung im Quelltext, wie du selbst geschrieben hast, musst du wahrscheinlich immer durchführen.
Mein Einwand war ja aus der Sicht des Anwendungsbenutzers gestellt und nicht aus der Sicht des Programmierers. Wenn sich die Liste der erlaubten Werte wirklich mal ändern/erweitert wird dann würde ich vielleicht eine Listbox empfehlen in der dann die erlaubten Werten enthalten sind.
Die Listbox hat den Vorteil, das sie optisch und vom Layout her meistens besser integriet werden kann vor allem dann, wenn Dein Chef auf "Edit" Felder steht.  Außerdem hat es den Vorteil, dass du am Fenster und am Layout nachträglich nichts ändern musst wenn neue mögliche Werte hinzugefügt werden müssen. Denn es reicht ja eine simple Erweiterung im Quelltext:
Delphi-Quelltext 1:
| Listbox.Items.Add ('neuer möglicher Wert'); |
Lg Martin
_________________ Ein Nutzer der Ecke
|
|
mexx 
      
Beiträge: 1183
|
Verfasst: Mi 09.11.05 11:37
Wie gesagt, viel wind um nix. Das Editfeld ist kein Feld, welches regelmäsig benutzt wird. Höchtens 1-3 mail im Jahr. Da sollte es wohl kein Problem sein, wenn der User eine Maske sieht, die nicht den Standart entspricht.
|
|
Martin1966
      
Beiträge: 1068
Win 2000, Win XP
Delphi 7, Delphi 2005
|
Verfasst: Mi 09.11.05 12:04
Deine Entscheidung.
_________________ Ein Nutzer der Ecke
|
|