[英]C# Temperature Conversion Form
我有此表格要參加我所在的學校課程。我在運行程序時遇到問題。 要求如下:
當用戶單擊按鈕進行轉換時,第一步是驗證用戶在文本框中的輸入。 任何實數都是可以接受的。 如果在文本框中輸入的用戶不是實數,請在結果輸出標簽中顯示適當的消息,如下所示。 “錯誤:請輸入要轉換的數字溫度。”
如果用戶輸入的是實數,則將其存儲,然后根據所選的“轉換為”單選按鈕計算轉換后的溫度值。 然后在輸出標簽中顯示結果。 請遵循此示例以獲取適當的格式:“ 72.4華氏度轉換為22.44攝氏度。”
當用戶單擊清除按鈕時,應將表單重置為其默認狀態,以准備輸入。 提示:除了清除輸入文本框和結果輸出標簽外,可能還有其他事情要做。
當用戶單擊按鈕退出時,該窗體應關閉,從而結束程序
這是我的代碼:
namespace TemperatureConversionForm
{
public partial class frmTemperatureConverter : Form
{
public frmTemperatureConverter()
{
InitializeComponent();
}
private void btnConvert_Click(object sender, EventArgs e)
{
double tempurature;
double celsius;
double fahrenheit;
if (!double.TryParse(txtInput.Text, out tempurature) == false )
{
MessageBox.Show("ERROR: Please enter a numeric temperature to convert");
txtInput.ResetText();
txtInput.Focus();
}
if (rdoCelsius.Checked == true)
{
celsius = double.Parse(txtInput.Text);
celsius = (5.0 / 9.0 * (txtInput - 32));
lblConversion.Text = celsius.ToString();
}
else if (rdoFahrenheit.Checked == true)
{
fahrenheit = double.Parse(txtInput.Text);
fahrenheit = (txtInput * 9.0 / 5.0 + 32);
lblConversion.Text = fahrenheit.ToString();
}
}
private void btnClear_Click(object sender, EventArgs e)
{
txtInput.ResetText();
lblConversion.ResetText();
txtInput.Focus();
}
private void btnExit_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
我收到2個錯誤:
代碼說明
CS0019運算符“-”不能應用於類型為“ TextBox”和“ Int”的操作數
CS0019運算符'*'不能應用於'TextBox'和'double'類型的操作數
就像編譯器告訴您的那樣,您正在嘗試對TextBox
對象執行數學運算:
txtInput - 32
您可能打算對從TextBox
解析的值執行數學運算:
celsius = (5.0 / 9.0 * (celsius - 32));
和:
fahrenheit = (fahrenheit * 9.0 / 5.0 + 32);
基本上, TextBox
是對象,而不是值。 它具有屬性和功能以及對象具有的各種功能。 盡管您可能會在概念上傾向於將其視為代表其所擁有的價值,但該語言需要您更加具體。 您可以從此處的TextBox
獲取值:
celsius = double.Parse(txtInput.Text);
然后,您需要對該值本身執行計算,而不是對它所來自的TextBox
對象執行計算。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.