![]() |
Tupdown Button - warum nur aufwärts?
Hallo, ich habe ein Edit.text -Feld und einen TupDOwn Button daneben platziert.
nun möchte ich, daß ich mit dem Button die Werte in dem Edit-Kasten erhöhen/ senken kann. Wenn ich folgenden Code unter Tupdown-Button KLICK eingebe kann ich nur zuvor eingegebene Werte erhöhen und bis auf diese wieder herunter erniedrigen, aber niemals tiefer gehen. also zur Laufzeit: vorgegebene Eingabe im Edit.text:= '20'; dann kann ich mit dem Button 21,22,23,24,25,26, .. (down) 26,25,24,,23,22,21,20,20,20,20,20,20,20,20, (es geht nicht auf 19 oder 18 runter ...) wenn ich 14 dann ebenfalls zur Laufzeit z.B: danach manuell 14 eintippe, kann ich niemals Werte wie 13 oder 12 durch klick auf diesen Button eingeben. Ist das korrekt so? Muß ich damit leben? kann man das (hoffentlich ) ändern?
Delphi-Quellcode:
if button = btNext then
begin Edit1.Text := IntToStr(StrToInt(Edit1.Text) + 1); UpDown1.Position := StrToInt(Edit1.Text); end; if button = btprev then begin Edit1.Text := IntToStr(StrToInt(Edit1.Text) - 1); UpDown1.Position := StrToInt(Edit1.Text); end; |
Re: Tupdown Button - warum nur aufwärts?
hoi,
setzt du vllt. vorher das minimum von Tupdown ? setzt doch mal Tupdown.min := 0 und position :=0 am anfang des onclick ereignisses (bei mir gehts sonst ohne probleme) cya |
Re: Tupdown Button - warum nur aufwärts?
blöde frage aber warum verwendest du kein TSpinEdit?
|
Re: Tupdown Button - warum nur aufwärts?
wie verwende ich das denn??
TSpinEdit? da sind ja noch weniger Informationen zu zu finden. |
Re: Tupdown Button - warum nur aufwärts?
Zitat:
|
Re: Tupdown Button - warum nur aufwärts?
HI,
du kannst aber auch den Up-Down Button an das Edit "kleben", indem du die Eigenschaft Associate verwendest. Dadurch wird es unnötig, die Werte über das Klick-Ereigniss auszuwerten. Bernhard |
Re: Tupdown Button - warum nur aufwärts?
ich danke Dir .. das hilft!!!
dabei hatte ich gestern abend schon mit Assciate experimentiert und die Edits zugewiesen, aber irgendwas funktionierte nicht ganz. Darum hatte ich dies wieder verworfen und von Hand versucht, das zu lösen. Aber danke! |
Re: Tupdown Button - warum nur aufwärts?
TSpinEdit würde ich heute eh nicht mehr verwenden:
1) Sind die Buttons zu klein, und das ist hässlich. 2) Stammt das ganez aus einer Zeit, wo es noch keinen XP Style gab, weshalb normale Buttons verwendet wurden, und das ist auch hässlich. Unter XP und Vista ham UpDown-Buttons, aber einen anderen Style, nämlich blau. |
AW: Tupdown Button - warum nur aufwärts?
Hallo,
offensichtlich ist in der Klasse TUpDown standardmäßig UpDown1.Min:=0, UpDown1.Max:=100 und UpDown1.Position:=0 vorgegeben. :wink: Mit z.B. UpDown1.Min:=-10 kann man dann auch 10 mal erfolgreich nach unten klicken bis das untere Limit erreicht ist. Mit UpDown1.Position:=10 hat man fast den gleichen Effekt, mit dem Unterschied, daß das obere Limit dann schon nach 90 mal klicken erreicht wird. Damit lassen sich auch die zulässigen Benutzereingaben eingrenzen. Die Eigenschaften Min,Max und Position sind übrigens vom Typ SmallInt. Somit ist der zulässige Wertebereich jeweils -32768..32767 . Aber wer klickt schon so oft da drauf? :roll: Eigentlich sollte man die ganze Problematik elegant mit der Eigenschaft UpDown1.Wrap:=true lösen können. Denn dann, so sagt es jedenfalls meine Delphi-Hilfe, nimmt Position den Wert von Max an, wenn Min unterschritten wird. Blöderweise gibt es (zumindest in meinem Delphi 2006) aber den Effekt, daß beim Überschreiten der Limits einmal in die falsche Richtung gezählt wird. :cry: Offensichtlich ist da ein Bug im Delphi und ich lasse Wrap deshalb generell auf false gesetzt und behelfe mich mit Min,Max und Position. Gruß Martin |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:22 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