-
Anonymous
TableLayoutPanel Winforms Событие MallPainting Нарисуйте внешнюю кривую в первом столбце
Сообщение
Anonymous »
Я рисую внешнюю дугу в первой ячейке каждой строки в TableLayoutPanel . Но я получаю другой вывод.
Я получаю это как это:
Это мой код
Код: Выделить всё
this.tlp_tra_actual.CellPaint += new TableLayoutCellPaintEventHandler(tableLayoutPanel1_CellPaint);
void tableLayoutPanel1_CellPaint(object sender, TableLayoutCellPaintEventArgs e)
{
//if (e.Row == 2 || e.Row == 3)
if (e.Column == 0)
{
Graphics g = e.Graphics;
Rectangle r = e.CellBounds;
r.Inflate(-1, -1);
using (GraphicsPath gp = new GraphicsPath())
{
gp.StartFigure();
gp.AddLine(new PointF(r.Width / 2-1, r.Height-1), new PointF(0+1, r.Height-1));
gp.AddLine(new PointF(0+1, r.Height-1), new PointF(0+1, r.Height / 2+1));
//gp.AddLine(new Point(r.Height / 2, 0), new Point(r.Width - (r.Height / 2), 0));
gp.AddArc(r, -90, 180);
gp.CloseFigure();
}
g.FillPath(Brushes.Blue, gp);
}
}
}
заранее спасибо
Подробнее здесь:
https://stackoverflow.com/questions/797 ... irst-colum
1755152266
Anonymous
Я рисую внешнюю дугу в первой ячейке каждой строки в TableLayoutPanel . Но я получаю другой вывод.
Я получаю это как это:
Это мой код
[code]this.tlp_tra_actual.CellPaint += new TableLayoutCellPaintEventHandler(tableLayoutPanel1_CellPaint);
void tableLayoutPanel1_CellPaint(object sender, TableLayoutCellPaintEventArgs e)
{
//if (e.Row == 2 || e.Row == 3)
if (e.Column == 0)
{
Graphics g = e.Graphics;
Rectangle r = e.CellBounds;
r.Inflate(-1, -1);
using (GraphicsPath gp = new GraphicsPath())
{
gp.StartFigure();
gp.AddLine(new PointF(r.Width / 2-1, r.Height-1), new PointF(0+1, r.Height-1));
gp.AddLine(new PointF(0+1, r.Height-1), new PointF(0+1, r.Height / 2+1));
//gp.AddLine(new Point(r.Height / 2, 0), new Point(r.Width - (r.Height / 2), 0));
gp.AddArc(r, -90, 180);
gp.CloseFigure();
}
g.FillPath(Brushes.Blue, gp);
}
}
}
[/code]
заранее спасибо
Подробнее здесь: [url]https://stackoverflow.com/questions/79734965/tablelayoutpanel-winforms-cellpainting-event-draw-a-outside-curve-at-first-colum[/url]