마우스 클릭시 점을 찍고 그려주는 Form 작업 중입니다. 제대로 점을 그릴 수 있도록 스크롤 오프셋을 올바르게 추가하고 추가하는 방법에 대해 혼란스러워합니다. 예를 들어, 왼쪽 위 좌표가 (0,0) 인 점을 추가하면 바로 원래 점에서 머물러 있지 않고 그 자체가 다시 그려지고 스크롤하는 동작으로 이동합니다. 나는 좌표를 저장할 때 스크롤 오프셋 얻기
this.AutoScroll = true
를 설정하고 최소 크기를 수동으로
다음
this.AutoScrollMinsSize = new Size(800,600);
내 마우스 클릭 이벤트가 지금까지 모습입니다 설정 :
사용하기에 적합한 방법은 무엇입니까if (e.Button == MouseButtons.Left)
{
Point newPoint = new Point(e.X, e.Y);
p.X += this.AutoScrollOffset.X;
p.Y += this.AutoScrollOffset.Y;
this.Invalidate();
}
을 AutoScrollOffset 속성을 사용하면 스크롤 할 때 움직이지 않고 포인트가 속한 지점을 유지할 수 있습니까?
내 프로그램은 또한 스크롤 이벤트가 발생할 때 다시 그리기 위해 스크롤 이벤트를 재정의하여 표시 영역이 남아 있으면 드로잉 문제를 해결할 수 있도록 추가해야합니다.