Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Frage zu einer ScrollBar (https://www.delphipraxis.net/60803-frage-zu-einer-scrollbar.html)

Tomislav 12. Jan 2006 13:06


Frage zu einer ScrollBar
 
http://www.plauener.de/lessing/delphi/dpue080.htm
auf dieser seite ist eine schöne aufgabe

wie mach ich das mit der scrollbar ich finde die beschreibung ein bisschen schlecht
mit der delphi hilfe komme ich auch nicht zurecht

Schaedel 12. Jan 2006 13:27

Re: Frage zu einer ScrollBar
 
Hallo,

Zitat:

Die Eigenschaft ScrollBar1.Position gibt den vom Nutzer eingestellten ganzzahligen Wert (zwischen Min und Max) zurück.
Zu beachten ist auch der Zusammenhang zwischen eingestellten Nachkommastellen und dem sich daraus ergebenden zulässigen Fehler.
Also du legst eine Scrollbar auf dein Form... gibst ihr den Wert vom Max und den Wert vom Min mit.
Dann kann der Benutzer scrollen.
Im OnScroll ereignis kannst du dann den Wert der Scrollbar abfragen und diesen ins das Editfeld schreiben.
Dann kannst du eine Procedure schreiben die dir auf die angegeben Kommastellen rundet.

DP-Maintenance 12. Jan 2006 13:40

DP-Maintenance
 
Dieses Thema wurde von "alcaeus" von "Multimedia" nach "VCL / WinForms / Controls" verschoben.
Hat wohl eher was mit der VCL zu tun...

Tomislav 12. Jan 2006 14:02

Re: Frage zu einer ScrollBar
 
danke das hat funktioniert

wie kann ich auf eine bestimmte stelle der zahl runden?

Khabarakh 12. Jan 2006 14:09

Re: Frage zu einer ScrollBar
 
Steht doch im Text: Delphi-Referenz durchsuchenFloatToStrF :gruebel: .
Oder willst du eine Gleitkommazahl selbst runden, also ohne String-Konvertierung?

Schaedel 12. Jan 2006 15:14

Re: Frage zu einer ScrollBar
 
mit Roundto kannst du angeben wieviel stellen hinter dem Komma gerundet werden sollen.
Diese funktion ist aber erst ab Delphi 7 verfügbar!

Da ich nicht genau weiß wie du das meinst gibt es auch eine adnere möglichkeit.

Und zwar kannst du auf einen einzelnen Char im String zugreifen mit String[1].
String[2] = 2. Char der Zeichenkette.
Diesen Char musst du dann in einen Integer wandeln und dann schaun ob der größer gleich 5 ist.
WEnn das der fall ist dann musst du den string[1] in ein integer wandeln und dann +1 rechnen.
dann die zahl wieder in integer und string[2] := '0'

so sollte es gehen ...

Tomislav 12. Jan 2006 15:39

Re: Frage zu einer ScrollBar
 
mit dem roundto ist eine gute idee
ich weiß nur nicht wie es funktioniert
ich kann mit der delphihilfe nichts anfangen wenn kein beispiel dabei steht

was mach ich zb damit
Delphi-Quellcode:
function RoundTo(const AValue: Double; const ADigit: TRoundToRange): Double;

supermuckl 12. Jan 2006 16:04

Re: Frage zu einer ScrollBar
 
roundto gibts mindestens schon ab D6

Tomislav 12. Jan 2006 16:17

Re: Frage zu einer ScrollBar
 
und wie benutze ich das?
schreib ich roundTo(2323, -2), geht es nicht

marabu 12. Jan 2006 17:00

Re: Frage zu einer ScrollBar
 
Hallo,

der zweite Parameter von RoundTo(AValue, ADigit) gibt an, nach welcher Stelle einer Zahl alle folgenden Ziffern durch Rundung auf Null gesetzt werden - wobei die Stellen durch die Zehnerpotenz angegeben wird:

Code:
AValue = 12345,67

ADigit Result
    -2  12345,67
    -1  12345,6
     0  12345
     1  12350
     2  12300
     3  12000
     4  10000
Ich denke du verstehst das Prinzip jetzt?

Grüße vom marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:20 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz