groupbox1改变边框颜色
private void groupBox1_Paint(object sender, PaintEventArgs e)
{
GroupBox gBox = (GroupBox)sender; //获取当前的groupbox
e.Graphics.Clear(gBox.BackColor); //清除当前groupbox的所有的颜色(字体和边框)
e.Graphics.DrawString(gBox.Text, gBox.Font, Brushes.Red, 10, 1); //设置group的text颜色为红色
var vSize = e.Graphics.MeasureString(gBox.Text, gBox.Font); //获取groupbox的大小
e.Graphics.DrawLine(Pens.Black, 1, vSize.Height / 2, 8, vSize.Height / 2);//画出字体左边的边框。黑色
e.Graphics.DrawLine(Pens.Red, vSize.Width + 8, vSize.Height / 2, gBox.Width - 2, vSize.Height / 2);//画出字体右边的边框。红色
e.Graphics.DrawLine(Pens.Yellow, 1, vSize.Height / 2, 1, gBox.Height - 2);//画出左边边框。黄色
e.Graphics.DrawLine(Pens.Blue, 1, gBox.Height - 2, gBox.Width - 2, gBox.Height - 2);//画出底部边框。蓝色
e.Graphics.DrawLine(Pens.Green, gBox.Width - 2, vSize.Height / 2, gBox.Width - 2, gBox.Height - 2);//画出右边边框。绿色
}
本文介绍了一个自定义GroupBox边框颜色的方法。通过重写Paint事件,使用不同颜色绘制组框的各个边框,实现视觉上的定制效果。具体步骤包括清除原有颜色、设置文字颜色并绘制不同颜色的上下左右边框。
4926

被折叠的 条评论
为什么被折叠?



