c#WinForm如何在坐标上添加按钮



我的想法是在我点击表单的坐标上添加一个按钮/自定义标记,但我不知道如何实现它。

private void AddLogo_Click_1(object sender, EventArgs e)
{

} 
private void MapBrowser_MouseUp(object sender, MouseEventArgs e)
{
textBox1.Text = "X-" + e.X + "Y- " + e.Y;
var button1 = new Button { Location = new Point(e.X, e.Y) };

Controls.Add(button1);
}

这让我每次点击表单时都能得到一个按钮,但我的想法是点击表单,然后按下addlogo按钮将按钮添加到表单中。

您需要形式的变量

bool _placeButton = false;
int _xButton;
int _yButton;

然后

private void MapBrowser_MouseUp(object sender, MouseEventArgs e)
{
textBox1.Text = "X-" + e.X + "Y- " + e.Y;
_xButton = e.X;
_yButton = e.Y;
_placeButton = true;
}

最后是

private void AddLogo_Click_1(object sender, EventArgs e)
{
if(_placeButton)
{
_placeButton = false;
var button1 = new Button { Location = new Point(_xButton, _yButton) };

Controls.Add(button1);
}  

} 

最新更新