![]() |
AW: Zustand eines Buttons erfahren
Dann prüfe einfach in
Delphi-Quellcode:
des Edits nicht auf eine gültige Nummer, sondern erst dann, wenn der Anwender eine bestimmte Aktion auslöst (erst dann will er ja etwas mit der Eingabe anfangen)
OnExit
|
AW: Zustand eines Buttons erfahren
Hmm, leider kann ich das Feld auch nicht leer lassen, dass wäre ein mögliches Abbruchskriterium, eber es darf nicht leer bleiben, weil mit einer gültigen Artikelnr. auch andere Artikeleigenschaften ausgelesen werden.
|
AW: Zustand eines Buttons erfahren
Mache einen OK-Button, der beim OnClick alle Prüfungen macht, bei nicht OK, den Fokus aufs Edit setzen und mache einen Abbruch-Button, der beim OnClick irgendwas anderes macht.
|
AW: Zustand eines Buttons erfahren
Zitat:
|
AW: Zustand eines Buttons erfahren
Ja. Muß ich mir was überlegen in dieser Richtung. Chef ist aber nicht begeistert von so vielen Mausgeklicke. Ich dachte, es gäbe einen einfacheren Weg.:(
|
AW: Zustand eines Buttons erfahren
Zitat:
Oder merk die den Status Oder merk dir die Maus position Oder weiß der Geier... Ohne Infos keine Lösung. |
AW: Zustand eines Buttons erfahren
Wie wäre es denn, das Edit nach Eingabe einer ungültigen Zahl und "Exiten" farblich zu markieren? Oder ein Icon daneben an dem man erkennt, dass die Eingabe nicht gültig ist. Die restlichen abhängigen Daten werden dann halt einfach nicht geladen, und der OK-Button disabled. Das würde ich als übliches Vorgehen ansehen.
|
AW: Zustand eines Buttons erfahren
Zitat:
An der Funktionalität hat sich zwischen Delphi 3 und Delphi 10 Seattle auch nichts Grundlegendes geändert, SetFocusedControl sieht noch recht ähnlich aus. SetFocusedControl könntest du übrigens auch überschreiben und das OnExit vor dem Aufruf von inherited auf nil setzen, wenn der gewünschte Button gerade fokussiert wird (wird als Parameter übergeben). Es funktioniert hier aber auch in Delphi 7 wunderbar mit der Prüfung im OnExit des Edits, ob ActiveControl der Button ist. Dort steht da schon das neu fokussierte Control drin. |
AW: Zustand eines Buttons erfahren
Zitat:
ActiveControl ist übrigens eine Eigenschaft von TForm (bzw. TCustomForm). In der Delphi-Hilfe steht unter Anderem: Zitat:
|
AW: Zustand eines Buttons erfahren
Hallo,
es ist schon länger her, jedoch wollte ich mich für die Tips noch bedanken. Aktuell stand ich wieder vor diesem Problem und habe festgestellt dass jaenicke hier völlig richtig lag.
Delphi-Quellcode:
ActiveControl ist natürlich eine Eigenschaft von TForm und nicht des TButton. Damit funktioniert es dann.
if Form1.ActiveControl <> JvHTButtonAbbrechen) then
JvEditRohwareNr.SetFocus; Danke. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:56 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