Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.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#_Event Listener_Mouseclick Event - Fatal编程技术网

C# 如何收听鼠标单击按钮后单击C

C# 如何收听鼠标单击按钮后单击C,c#,event-listener,mouseclick-event,C#,Event Listener,Mouseclick Event,我对C相当陌生 我有一个按钮,它被点击后,必须听鼠标点击,以获得鼠标的坐标 private void AddBuilding_Click(object sender, EventArgs e) { AddBuilding.Text = "Select coords"; // listen for second click AddBuilding.Text = "

我对C相当陌生

我有一个按钮,它被点击后,必须听鼠标点击,以获得鼠标的坐标

        private void AddBuilding_Click(object sender, EventArgs e)
        {
            AddBuilding.Text = "Select coords";

            // listen for second click
            AddBuilding.Text = "Add"; //Change the button text back.

        }
编辑:

控件MouseDown没有在任何地方引用,我也不能调用它

Control_MouseDown();

因为这会产生错误。

第一次单击“建筑”按钮会将表单置于“添加建筑”模式,第二次单击图片框会不会?你应该在那里粉刷这幢大楼。。这是两个Sperate事件,由单独的处理程序执行单独的操作,由一个变量控制,两个都可以访问一个来设置变量,一个来读取变量不,也许我的问题让人困惑。对此我很抱歉。第一次单击将更改按钮的文本以选择坐标。然后应该检查用户是否用鼠标点击了屏幕上的某个地方。并从该位置获取坐标。使用,它确保捕获所有鼠标事件,即使它在控件或窗体之外。您需要一个bool变量,以便知道下一次单击应该用于选择坐标。不保证你会让它键入Ctrl+Esc进行测试,用MouseCaptureChanged事件重置bool和按钮文本。我似乎无法让它工作。。。有什么建议吗?
Control_MouseDown();