2
我的形式,采用和借鉴了鼠标点击一个点上工作时的偏移。我很困惑如何正确地获取和添加滚动偏移量,以便可以正确绘制点。例如,现在当我添加一个点,左上角坐标为(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属性保持它们所属的点而不是在滚动时移动?
我要补充一点,我的计划还覆盖了Scroll事件当滚动事件发生时修复图纸一旦消失可见区域留下的问题重绘。