用于显示鼠标单击的TextBox

时间:2017-11-05 22:08:37

标签: c# visual-studio

我的问题是我试图让文本框显示我点击屏幕的次数。我遇到的问题是无法获取文本框的文本并将其转换为int。谢谢!

constexpr

4 个答案:

答案 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();