0
패널의 Paint 이벤트 내에서 2 포인트 사이에 파란색 선을 그어 야하는 코드가 있습니다. 버튼을 클릭하여 트리거C# 패널 라인 덮어 쓰기
void setPoint(Point p)
{
if (f.IsEmpty)
f = p;
else
{
s = p;
panel1.Invalidate();
}
}
:
private void panel1_Paint(object sender, PaintEventArgs e)
{
panel1.AllowDrop = true;
listBox1.AllowDrop = true;
if (!s.IsEmpty && !f.IsEmpty)
{
e.Graphics.DrawLine(new Pen(Color.Blue, 5f), f, s);
s = Point.Empty;
f = Point.Empty;
}
}
은 임에 SetPoint 방식의 패널을 무효화. 줄을 그리지 만,
문제는입니다. 한 줄이 이미 있으면 문제가됩니다. 그것을 덮어 씁니다. 나는 문제가
Invalidate
에 있다고 생각했다. 하지만
Refresh()
또는
Update()
이 작동하지 않기 때문에 해결 방법을 모릅니다.
내가 잘못하고있는 것은 무엇입니까?
좋아요, 나는 벌써 이것을했습니다. 모든 것이 이제는 잘되고 있습니다. 감사. –