我有一个没有边框的WinForm(无边框)。如何在表单中添加1px黑色边框?
public MainForm()
{
InitializeComponent();
this.DoubleBuffered = true;
Region = System.Drawing.Region.FromHrgn(CreateRoundRectRgn(0, 0, Width - 5, Height - 5, 10, 10)); // adjust these parameters to get the lookyou want.
}
[DllImport("Gdi32.dll", EntryPoint = "CreateRoundRectRgn")]
private static extern IntPtr CreateRoundRectRgn
(
int nLeftRect, // x-coordinate of upper-left corner
int nTopRect, // y-coordinate of upper-left corner
int nRightRect, // x-coordinate of lower-right corner
int nBottomRect, // y-coordinate of lower-right corner
int nWidthEllipse, // height of ellipse
int nHeightEllipse // width of ellipse
);
我需要一个无边框格式,但我想添加一个1px边框。
答案 0 :(得分:5)
在表单的Paint
事件处理程序中,添加以下代码:
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.DrawRectangle(Pens.Black, new Rectangle(0, 0, Width - 1, Height - 1));
}
祝你好运!
答案 1 :(得分:2)
您可以添加完全停靠的Panel
,并将另一个完全停靠的Panel
添加为子控件。将外Panel
的填充设置为1,将外Panel
的背景颜色设置为黑色。
然后将内部Panel
的背景颜色设置为SystemColors.Control
。
答案 2 :(得分:0)
如果你不想画画,
添加4个面板宽度或高度2或4以及黑色背景颜色 将它们分别在顶部,右侧,底部,左侧以不同的方式停靠在四个侧面
Cannot convert value of type '(Any, Error) -> ()' to expected argument type 'PFIdResultBlock?'
您还可以更改鼠标指针以调整图标大小,还可以调整表格,在鼠标事件上编写一些代码。