Visual c#在按钮前面绘制图形

本文关键字:绘制 图形 前面 按钮 Visual | 更新日期: 2023-09-27 18:08:33

我正在做一个winform项目(visual c#)。其中一个表单上有许多按钮,它们彼此相邻。我想在这些按钮前面添加图形,让用户可以一直按按钮。我不能在后面添加图形,因为按钮隐藏了图形,我不想移动按钮。我试着把控制装置搬到后面,但不管用。什么好主意吗?谢谢!

toPolygon.Insert(toPolygon.Count, button); //insert button to vector
System.Drawing.Pen myPen;
myPen = new System.Drawing.Pen(System.Drawing.Color.Black);
myPen.Width = 10;
System.Drawing.Graphics formGraphics = this.CreateGraphics();
formGraphics.DrawLine(myPen, toPolygon[toPolygon.Count - 2].Location.X, toPolygon[toPolygon.Count - 2].Location.Y,
    button.Location.X , button.Location.Y); //draw a line from last button in the vector to the new one
myPen.Dispose();
if (toPolygon.First() == toPolygon.Last())
{   
    //draw polygon and clean the vector
}

Visual c#在按钮前面绘制图形

这里你可以做两件事,你可以按照GuidoG说的做,让按钮图像成为你想要放在按钮上的图像,或者在你的表单设计器中,如果你点击你的按钮,把它的背景色改为透明,通过"Web"选项卡,然后把"flatstyle"改为"Flat",然后把"ForeColor"也改为透明。这样你就完全看不到按钮,可以看到它后面的所有东西,而且仍然可以把它当作一个控件使用。

如果你想在控件上画直线等。你必须重载该控件的"OnPaint"方法。

希望有帮助!