2015-04-29 43 views
-1

我正在嘗試製作一個家用釀造計算器,當用戶輸入原始重力和最終重力並按下Calculate按鈕時,程序將使用這些數據來計算按重量計算的酒精重量和酒精重量。如何將用戶文本框輸入轉換爲整數?

看起來很簡單,但我很難將用戶輸入轉換爲可用於公式的整數。我得到一個錯誤,其內容如下:

作業的左側必須是一個變量屬性或 索引器。

任何幫助將不勝感激。

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 

namespace BrowerD_Final 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     private void btnCalculate_Click(object sender, EventArgs e) 
     { 
      //declare variables 
      int origGrav; 
      int finalGrav; 
      int gravDifference; 
      int abw; 
      int abv; 

      //converting tbOrigGrav input to int 
      origGrav = Convert.ToInt32(tbOrigGrav.Text); 
      origGrav = int.Parse(tbOrigGrav.Text); 

      //converting tbFinalGrav input to int 
      finalGrav = Convert.ToInt32(tbFinalGrav.Text); 
      finalGrav = int.Parse(tbFinalGrav.Text); 

      //show numbers in messagebox for testing 
      //MessageBox.Show(this.tbOrigGrav.Text); 
      //MessageBox.Show(this.tbFinalGrav.Text); 

      origGrav - finalGrav = gravDifference; 

      gravDifference * 105 = abw; 

      abw * 1.25 = abv; 
     } 
    } 
} 

回答

4

這些任務應該是otherway這樣

gravDifference = origGrav - finalGrav; 
abw = gravDifference * 105 ; 
abv = abw * 1.25 ; 
1

你的問題是,在這些線路:

origGrav - finalGrav = gravDifference; 
gravDifference * 105 = abw; 
abw * 1.25 = abv; 

我覺得你真的是做的是:

gravDifference = origGrav - finalGrav; 
abw = gravDifference * 105; 
abv = abw * 1.25; 

BTW ABV應該可能是一個浮動而不是int,因爲它會被截斷/舍入

此外,您的代碼不夠健壯,您可能需要首先檢查文本框中是否有有效的輸入,然後使用int.TryParseConvert