[英]How do I turn 67 into float equivalent?
我正在使用需要在變量上設置值的庫,該庫僅接受float
類型,但是TrackBar
控件僅接受Int32
作為其Value
屬性。
因此,假設TrackBar
的最小值為0,最大值為TrackBar
的當前值為67; 如何將該值轉換為等效的float? 因此,它應該成為像 0.067,如果我是正確的。
要將int
轉換為float,只需執行以下操作:
(float)trackBar.Value;
要么
Convert.ToSingle(trackBar.Value);
請注意,如果需要更改范圍,則至少需要執行除法。 即在您的情況下,看起來值是百分比,因此除以100.0:
trackBar.Value / 100.0f;
請注意,如果使用100
,則結果將是錯誤的,因為使用整數除法( trackBar.Value / 100
始終為0
)。
通常,將0-n
范圍內的整數轉換為(mixValue, maxValue)
范圍:
(trackBar.Value /( (float) maxValue - minValue)) + minValue;
將整數值除以100作為float
以得到百分比作為float
。 這將導致該值歸一化為介於0和1之間的十進制值:
float trackBarPercentage = trackBar.Value / 100f;
將integer
數值除以float
值將導致右側自動轉換為float
類型。 有關更多信息,請參見MSDN文章強制轉換和類型轉換 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.