So verwenden Sie Floats mit TrackBar

8

Ich verwende eine TrackBar Kontrolle. Standardmäßig sind die Werte int32 . Ich würde gerne Dezimalwerte verwenden, so dass die Verwendung auf einer feineren Ebene auswählen kann. Wie kann ich das TrackBar -Steuerelement zum Akzeptieren von Gleitkommazahlen erhalten?

    
rross 22.01.2010, 02:03
quelle

2 Antworten

18

Sie können einen Multiplikator verwenden. Angenommen, Sie möchten, dass Ihr TrackBar-Steuerelement von 0 bis 5 mit 0,01 Schritten wechselt. Setzen Sie das Minimum auf 0, das Maximum auf 500 und erhöhen Sie es um 1.

Wenn Sie Ihren Gleitkommawert festlegen, multiplizieren Sie ihn mit 100 und verwenden Sie diesen Wert für den TrackBar-Wert.

Sie sollten auf diese Weise einen (realistischen) Grad an Genauigkeit erreichen können, da die TrackBar mit Ints arbeitet und den vollen Datenbereich von Int32 zur Verfügung stellt. Dies ist viel präziser als eine Benutzeroberfläche erfordert.

    
Reed Copsey 22.01.2010, 02:13
quelle
4

Eine andere Idee wäre, zu erben von TrackBar und float-Werte in einer benutzerdefinierten Klasse in der Art zu simulieren, wie Reed Copsey vorgeschlagen hat, ints zu verwenden und mit einem Präzisionsfaktor zu multiplizieren.

Das Folgende funktioniert ziemlich gut für kleine Float-Werte:

%Vor%     
Bitterblue 09.01.2014 12:28
quelle

Tags und Links