簡體   English   中英

如何將67轉換為浮點數?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM