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 P2_7_24_2016_ED_app
{
public partial class Form1 : Form
{
int win;
int loss;
int winCounter;
int lossCounter;
public Form1()
{
InitializeComponent();
}
private void buttonWin_Click(object sender, EventArgs e)
{
this.textBoxWin.Text = "";
++win;
++winCounter;
this.textBoxWin.Text = win.ToString();
}
private void buttonLoss_Click(object sender, EventArgs e)
{
this.textBoxLoss.Text = "";
++loss;
++lossCounter;
this.textBoxLoss.Text = loss.ToString();
}
private void buttonRate_Click(object sender, EventArgs e)
{
textBox1.Text = "";
double result = winCounter/(winCounter + lossCounter);
textBox1.Text = result.ToString();
}
}
}
这是windows窗体应用程序中的代码,它的简短所以我不打算解释所有的东西。 问题是,最后textBox1.Text = result.ToString();
显示“0”,但它应该是一些数字。当win winCounter是1,lossCounter是1时,它应该插入1 /(1 + 1)= 0.5,但它表示“0”。我尝试了我所知道的一切,所以请给我一个小费。为什么WinForms中的textBox不能显示double?
这与Windows Forms无关。您会在约5行的控制台应用程序中看到完全相同的结果。提示:'winCounter'和'lossCounter'都是整数。 1 /(1 + 1)= 0时执行整数运算。 –
将股息投资加倍。 –
我试着将它保存在双倍结果中,但它仍然显示为“0” –