我的问题是我试图让文本框显示我点击屏幕的次数。我遇到的问题是无法获取文本框的文本并将其转换为int。谢谢!
constexpr
答案 0 :(得分:1)
尝试以下更改:
{
public partial class Form1 : Form
{
Random rand = new Random();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
button1.Location = new Point(rand.Next(0, 750), rand.Next(0, 750));
}
int mouseclick = 0;
private void Form1_MouseClick(object sender, MouseEventArgs e)
{
if (e.Button != MouseButtons.Right)
{
mouseclick++;
}
textBox1.Text = mouseclick.ToString();
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
}
}
我已将鼠标点击移出活动,以便它可以保持其值,并且如果用户点击鼠标左键,我只会递增鼠标点击。
答案 1 :(得分:0)
textbox数据类型是一个字符串,但其赋值是一个被解析为数字的数字。也许以下示例会有所帮助。
string mouseclick = "0";
int intMouseClick = Int32.Parse(mouseclick);
textBox1.Text = intMouseClick.ToString();
答案 2 :(得分:0)
您尝试使用Int32.Parse(...)将int转换为字符串bei。 但是这个函数执行反向转换。它将字符串转换为int。
答案 3 :(得分:0)
首先,您告诉程序每次单击时将鼠标点击设置为0。您可能希望代码读取:
if (e.Button != MouseButtons.Right)
{
int mouseclick = mouseclick + 1;
textBox1.Text = Int32.Parse(mouseclick);
}
或将int移出if语句,然后执行mouseclick++;
最重要的是,如果您尝试设置文本框文本,只需执行此操作即可轻松完成:
textBox1.Text = mouseclick.ToString();