Delphi-PRAXiS

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/)
-   -   progressbar large number (https://www.delphipraxis.net/153817-progressbar-large-number.html)

JnZn558 17. Aug 2010 11:22

progressbar large number
 
progressbar.max ist integer, ich hab zahlen in UInt64
wie mach ich das am besten? z.B 4194304 - 64865315649876

mkinzler 17. Aug 2010 11:25

AW: progressbar large number
 
Nimm
Delphi-Quellcode:
Max := RealMax / x;
und Steppe bei jedem x.

himitsu 17. Aug 2010 11:31

AW: progressbar large number
 
Diese Einteilung kannst du doch eh niemals anzeigen.
Oder wer hat hier schon einen Bildschirm mit über 2 Milliarden Pixeln in der Breite?

Wie MK es schon sagte: skaliere einfach einen Wert.

JnZn558 17. Aug 2010 12:43

AW: progressbar large number
 
Zitat:

Zitat von himitsu (Beitrag 1042727)
Diese Einteilung kannst du doch eh niemals anzeigen.
Oder wer hat hier schon einen Bildschirm mit über 2 Milliarden Pixeln in der Breite?

Wie MK es schon sagte: skaliere einfach einen Wert.

wie meinst du mit skalieren??? beispiel bitte

Daniela.S 17. Aug 2010 12:45

AW: progressbar large number
 
Am Besten alles in Prozentwerte umrechnen...

Aphton 17. Aug 2010 14:42

AW: progressbar large number
 
64 Bit (8 Byte) nach 32 Bit (4 Byte) umkalsieren:

Delphi-Quellcode:
var
  X: UInt64;

ProgressBar1.Max := (X / $FFFFFFFFFFFFFFFF) * $FFFFFFFF;
Das einzige Problem - ein Integer ist signed (vorzeichenbehaftet) und somit halbiert sich der (positive) Wertebereich (also max $7FFFFFFF).

hathor 17. Aug 2010 15:39

AW: progressbar large number
 
umkalsieren = skalieren !!!

Das kommt von Euren GDF-Schreibfehlern!


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:51 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 by Thomas Breitkreuz