2017-04-19 77 views
0

我不確定發生了什麼事。我認爲我已經設置了最後清除輸出標籤。每次我清除它,該程序仍然記住以前的號碼並添加到它。我真的不知道發生了什麼。爲什麼在清除輸出標籤後,這些值仍然相加?

另請注意,如何在此方法中設置單選按鈕?

第一編碼類,所以我仍然是一個初學者。

private double oilandlube() 
    { 
     if (checkBox1.Checked == true) 
     { 
      Oil_change = 26; 
     } 
     if (checkBox2.Checked == true) 
     { 
      Lube_job = 18; 
     } 
     return Oil_change + Lube_job; 
    } 
    private void Oiltype() 
    { 
     if (radioButton1.Checked) 
     { 
      Regular = 0; 
     } 
     if (radioButton2.Checked) 
     { 
      Mixed = 10; 
     } 
     else 
     { 
      Mixed = 0; 
     } 
     if (radioButton3.Checked) 
     { 
      Full_Synthetic = 18; 
     } 
     else 
     { 
      Full_Synthetic = 0; 
     } 
    } 
    private void carwash() 
    { 
     if (radioButton4.Checked) 
     { 
      none = 0; 
     } 
     if (radioButton5.Checked) 
     { 
      complimentary = 0; 
     } 
     if (radioButton6.Checked) 
     { 
      Full_service = 6; 
     } 
     else 
     { 
      Full_service = 0; 
     } 
     if (radioButton7.Checked) 
     { 
      Premium = 9; 
     } 
     else 
     { 
      Premium = 0; 
     } 

    } 
    private double flushes() 
    { 
     if (checkBox3.Checked == true) 
     { 
      Radiator_flush = 30; 
     } 

     if (checkBox4.Checked == true) 
     { 
      Transmission_flush = 80; 
     } 

     return Radiator_flush + Transmission_flush; 
    } 
    private double misc() 
    { 
     if (checkBox5.Checked == true) 
     { 
      inspection = 15; 
     } 

     if (checkBox6.Checked == true) 
     { 
      replace_muffler = 100; 
     } 

     if (checkBox7.Checked == true) 
     { 
      tire_rotation = 20; 
     } 
     return inspection + replace_muffler; 
    } 
    private double partsandlabor() 
    { 

     double.TryParse(textBox1.Text, out parts); 
     double.TryParse(textBox2.Text, out labor); 

     return parts + labor; 

    } 

    private double tax() 
    { 
     return partsandlabor() * taxes; 
    } 



    private void summary() 
    { 
     service = oilandlube() + flushes() + misc(); 
     total_parts = partsandlabor(); 
     double total_tax = tax(); 
     double grand_total = service + total_parts + total_tax; 

     label7.Text = service.ToString("c"); 
     label8.Text = total_parts.ToString("c"); 
     label9.Text = total_tax.ToString("c"); 
     label10.Text = grand_total.ToString("c"); 

    } 


    private void button3_Click(object sender, EventArgs e) 
    { 
     this.Close(); 
    } 

    private void button1_Click(object sender, EventArgs e) 
    { 
     oilandlube(); 
     carwash(); 
     flushes(); 
     misc(); 
     partsandlabor(); 
     summary(); 
    } 
    private void ClearOilandlube() 
    { 
     checkBox1.Checked = false; 
     checkBox2.Checked = false; 
    } 
    private void ClearMisc() 
    { 
     checkBox5.Checked = false; 
     checkBox6.Checked = false; 
     checkBox7.Checked = false; 
    } 
    private void ClearFlushes() 
    { 
     checkBox3.Checked = false; 
     checkBox4.Checked = false; 
    } 

    private void ClearSummary() 
    { 
     label7.Text = ""; 
     label8.Text = ""; 
     label9.Text = ""; 
     label10.Text = ""; 
    } 
    private void button2_Click(object sender, EventArgs e) 
    { 

     ClearOilandlube(); 
      ClearMisc(); 
      ClearFlushes(); 
      ClearSummary(); 



     radioButton1.Checked = false; 
     radioButton2.Checked = false; 
     radioButton3.Checked = false; 
     radioButton4.Checked = false; 
     radioButton5.Checked = false; 
     radioButton6.Checked = false; 
     radioButton7.Checked = false; 
     textBox1.Text = "0"; 
     textBox2.Text = "0"; 

    } 
} 

}

回答

1

當您清除控件的內容,你也應該清楚的後盾變量的值,所以它們不保留其先前的值。你應該能夠在你的Clear方法中將它們設置回零。

例如,油和潤滑油可能看起來像:

private void ClearOilandlube() 
{ 
    checkBox1.Checked = false; 
    checkBox2.Checked = false; 
    Oil_change = 0; 
    Lube_job = 0; 
    Mixed = 0; 
    Regular = 0; 
    Full_Synthetic = 0; 
} 
+0

謝謝,它似乎現在工作。 –

0

它看起來像你拿着你的一些變量的狀態,全球,所以你可以在其他地方訪問它們。

Mixed = 10; 

你必須是重置一些默認值,以及。

+0

這些用於單選按鈕。我目前使用的所有值都設置爲0. –

+0

我明白了,感謝您的幫助。 –

相關問題