要將秒數轉換爲分鐘,您只需將其除以60.0(您需要小數或將其視爲整數)。如果看上去像一個整數,你通過30秒,30/60將等於0.
也使用double.TryParse
方法。現在,如果有人輸入1.50xx,你的應用程序將崩潰。使用double.TryParse
方法或使用try catch機制或僅允許數字輸入。
編輯
這將完成你想要的。我添加了一個標籤來顯示輸出,但您可以將其刪除。
double enteredNumber;
if (double.TryParse(minTosecTextBox.Text, out enteredNumber))
{
// This line will get everything but the decimal so if entered 1.45, it will get 1
double minutes = Math.Floor(enteredNumber);
// This line will get the seconds portion from the entered number.
// If the number is 1.45, it will get .45 then multiply it by 100 to get 45 secs
var seconds = 100 * (enteredNumber - Math.Floor(enteredNumber));
// now we multiply minutes by 60 and add the seconds
var secondsTotal = (minutes * 60 + seconds);
this.labelSeconds.Text = secondsTotal.ToString();
}
else
{
MessageBox.Show("Please enter Minutes");
}
EDIT 2
一些進一步澄清
您還沒有轉化分鐘,秒,因爲如果你再1.5(1分半鐘),就等於90秒。這是合乎邏輯和明顯的。您只將小數部分作爲分鐘,將小數部分作爲秒數(1.30 = 1分30秒= 90秒)。 因此,我們只需要將小數點前的部分轉換爲秒,並將小數點後的部分添加到它。
這是正確的,1.5分鐘,即一分鐘半,對應到90秒...... –
一分鐘60秒。因此'1.5 * 60 = 90' –