![]() |
Spinedits deren Eingaben sich gegenseitig begrenzen
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
ich habe wieder einmal ein logisches Problem. Ich nutzte 2 JvSpinedit Felder (für diejenigen, die die Komponente nicht kennen Screeni im Anhang) Es sind Editfelder, die Fliesskommazahlen zulassen, und normale Integer, die man über ein Spinbutton, hoch und runter zählen kann. Mein Problem, ich habe jenachdem was für ein Zweck die Editfelder gerade haben (d.h. mit welchen Werten, die Felder gefüllt werden) müssen die möglichen Eingaben der Felder sich gengenseitig begrenzen. Beispiel: Edit1 hat den MinWert:= 0 und den MaxWert: (Edit2-100) Edit2 hat den MinWert: Edit1 + 100 max:=10000 Also es besteht immer ein Offset von 100. Das das Delta(zwischen Edit1 und Edit2) muss 100 betragen. Also darf z.B. folgender Zustand nicht auftreten:
Delphi-Quellcode:
Wo und wie mache ich diese Überprüfung und Begrenzung am Besten?
Edit1.Value:= 0;
Edit1.Value:= 99; Es soll die Eingaben des Benutzters begrenzen, nicht die Quelltextdefinition) Vielen Dank Gruß DelphiManiac //Edit: Bild eingefügt |
Re: Spinedits deren Eingaben sich gegenseitig begrenzen
im edit1.onchange den Grenzwert für edit2 setzen und umgekehrt.
Pseudocode:
Delphi-Quellcode:
Edit1.onChange:
Edit2.min := Edit1.wert + 100; Edit2.onChange: Edit1.max := Edit2.wert + 100; |
Re: Spinedits deren Eingaben sich gegenseitig begrenzen
Liste der Anhänge anzeigen (Anzahl: 1)
Habe mal die Ereignisse im Screenshot angehängt
|
Re: Spinedits deren Eingaben sich gegenseitig begrenzen
Denkfehler ... siehe mein erster Post.
|
Re: Spinedits deren Eingaben sich gegenseitig begrenzen
Hi,
ja denke so könnte es klappen, habe da zwar wahrscheinlich noch Probleme wenn ich dann das ganze mit einem Exponent 10 hoch-2 bewerte und dann die Grenzen neu setzten muss. Aber dass guck ich mir mal an, bei Problemen meld ich mich wieder. Gruß DelphiManiac |
Re: Spinedits deren Eingaben sich gegenseitig begrenzen
Hallo,
ich würde auf die Eingabe des zweiten Wertes verzichten, da der zweite Wert aus dem ersten Wert abgeleitet werden kann. Der berechnete Wert kann ruhig angezeigt werden, aber warum sollte jemand ihn editieren? Grüße vom marabu |
Re: Spinedits deren Eingaben sich gegenseitig begrenzen
@marabu:
Hallo, ich glaube da hast du mich einwenig missverstanden, also beide Editfelder sollen einstellbar(veränderbar) sein. Es muss nur gewährleistet sein, dass zwischen Edit1 und Edit2 ein Offset von min. 100 besteht. |
Re: Spinedits deren Eingaben sich gegenseitig begrenzen
Ah, jetzt, ja.
Dann würde ich aber die Min-Max-Values unangetastet lassen:
Delphi-Quellcode:
Freundliche Grüße
const
MIN_DIST = 100; MIN_VAL = 0; MAX_VAL = 10000; procedure TDemoForm.LowEditChange(Sender: TObject); begin if HighEdit.Value < (LowEdit.Value + MIN_DIST) then HighEdit.Value := LowEdit.Value + MIN_DIST; end; |
Re: Spinedits deren Eingaben sich gegenseitig begrenzen
@marabu
Hey genau so werde ich es machen!! So klappt die gegenseitige Begrenzung super. Danke und Viele Grüße DelphiManiac:lol: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:08 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