AGB  ·  Datenschutz  ·  Impressum  







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

Zustand eines Buttons erkennen

Ein Thema von Luckner · begonnen am 20. Okt 2015 · letzter Beitrag vom 23. Okt 2015
Antwort Antwort
Seite 2 von 2     12   
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
642 Beiträge
 
Delphi 10.1 Berlin Professional
 
#1

AW: Zustand eines Buttons erkennen

  Alt 20. Okt 2015, 14:22
Hallo,

folgendes Problem. Ich habe ein Editfeld und einen Abbruch-Button. Im Editfeld sollen und müssen nur Zahlen eingetragen werden....
Wenn ich das "müssen" richtig interpretiere, darf der Inhalt des TEdit nicht leer sein. Folglich muss an anderer Stelle sowieso noch eine Validierung auf <> '' stattfinden, womöglich auch noch Wertebereich-Check usw.

BTW ein einfaches TEdit ist nun mal keine "gute" Komponente für ein rein numerisches Eingabefeld. Auch nicht die neue Variante mit "NumbersOnly", denn wenn die z.B. noch mit dem Default-Text "Edit1" vorbelegt ist, oder der Text falsch vorbelegt wird (Edit1.Text := 'Hallo') dann hat man ein ähnliches Problem.
Gruss Otto PS: Sorry wenn ich manchmal banale Fragen stelle. Ich bin Hobby-Programmierer und nicht zu faul die SuFu zu benutzen
  Mit Zitat antworten Zitat
FarAndBeyond
(Gast)

n/a Beiträge
 
#2

AW: Zustand eines Buttons erkennen

  Alt 20. Okt 2015, 14:56
FormKeyPress:
Delphi-Quellcode:
If Sender Is TEdit
Then
 Begin
  If Pos(Key,'1234567890'+#8#27#13) = 0 Then Key:= #0;
 End;
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

AW: Zustand eines Buttons erkennen

  Alt 20. Okt 2015, 14:58
Nur ein Tipp zum Vorgehen, ohne dass etwas blockiert:

Keine blokierenden Operationen im OnExit und es gibt keine Probleme.


Im OnExit oder OnChange nur prüfen und dann per Farbe, Hint, BallonHint oder Dergleichen den Status/Hinweis anzeigen.
Der HintText ist auch nett, wenn etwas eingegeben werden muß, da er nur angezeigt wird, wenn nichts in Text steht.

Und bei "OK" (Ausführen der Aktion) dann mit richtigen Fehlermeldungen um sich werden, wenn dann immernoch nichts drin steht.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Zustand eines Buttons erkennen

  Alt 20. Okt 2015, 15:04
Ich hab die Jedis nicht, aber hat so ein TJvValidateEdit kein OnValidate-Event?
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
mm1256

Registriert seit: 10. Feb 2014
Ort: Wackersdorf, Bayern
642 Beiträge
 
Delphi 10.1 Berlin Professional
 
#5

AW: Zustand eines Buttons erkennen

  Alt 20. Okt 2015, 18:22
Die Jedi's kenne ich nicht. (Vorab-)Validierung bei der Eingabe lässt sich meiner Meinung nach immer noch am Benutzerfreundlichsten mit der Orpheus-Bibliothek von Turbopower realisieren, die ich mittlerweile schon ca. 18 Jahren verwende. Sind OpenSource und heute immer noch erste Sahne, dazu die komfortablen Einstellungen im OvcController wie AutoAdvanceChar, AutoAdvanceLeftRight, AutoAdvanceUpDown, AutoSelect, BeepOnError und InsertPushes.
Gruss Otto PS: Sorry wenn ich manchmal banale Fragen stelle. Ich bin Hobby-Programmierer und nicht zu faul die SuFu zu benutzen
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
984 Beiträge
 
Delphi 6 Professional
 
#6

AW: Zustand eines Buttons erkennen

  Alt 20. Okt 2015, 19:04
Um mal zur Fragestellung zurück zu kommen...

Mit Delphi 6 gehts z.B. so:

Delphi-Quellcode:
procedure TForm1.Edit1Exit(Sender: TObject);
begin
  if not(ActiveControl is TButton) then DoValidate(Edit1.Text);
end;
Statt '(ActiveControl is TButton)' kannst Du auch 'ActiveControl = AbbruchButton' benutzen und somit wird das Validieren nur ausgeführt, wenn du NICHT auch Abbruch clickst..
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 02:05 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