Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何创建显示鼠标C连续坐标的标签#_C#_Timer_Event Handling - Fatal编程技术网

C# 如何创建显示鼠标C连续坐标的标签#

C# 如何创建显示鼠标C连续坐标的标签#,c#,timer,event-handling,C#,Timer,Event Handling,如何创建显示鼠标C连续坐标的标签# 我测试了几个不同的选项,我觉得计时器滴答声事件是持续更新标签的最佳选择。但我做错了什么,我似乎无法让它工作 private void timer1_Tick(object sender, EventArgs e) { Point position = Cursor.Position; position = Cursor.Position; int x = p

如何创建显示鼠标C连续坐标的标签#

我测试了几个不同的选项,我觉得计时器滴答声事件是持续更新标签的最佳选择。但我做错了什么,我似乎无法让它工作

        private void timer1_Tick(object sender, EventArgs e)
        {
            Point position = Cursor.Position;
            position = Cursor.Position;
            int x = position.X;
            int y = position.Y;
            string str = x.ToString() + ":" + y.ToString();
            coords.Text = str;

        }

为什么不使用一个简单的MouseMove事件?! 假设您使用的是WinForms,这段非常简单的代码显示了鼠标在窗体上的位置:

private void Form1_MouseMove(object sender, MouseEventArgs e)
{
    label1.Text = $"{e.X:0},{e.Y:0}";
}
对于效率较低的计时器方法:

private void timer1_Tick(object sender, EventArgs e)
{
    label1.Text = $"{Cursor.Position.X:0},{Cursor.Position.Y:0}";
}

只需确保将
计时器。Enabled
设置为
True
,即可使其正常工作。

什么地方工作不正常,请指定。标签上是否没有显示任何内容?它不是在更新吗?坐标不正确吗?标签根本没有更新。-计时器未启用…坐标应在整个屏幕上可见,而不仅仅是表单。这就是为什么我不能使用MouseMove事件。计时器没有启用(如此愚蠢)哈哈哈,非常感谢