拖动面板会留下它的“幽灵”副本
本文关键字:幽灵 副本 拖动 | 更新日期: 2023-09-27 18:33:56
我使用以下代码拖动面板
public void researchMenu_MouseisDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
dragging = true;
x = e.X;
y = e.Y;
}
}
public void researchMenu_MouseisUp(object sender, MouseEventArgs e)
{
dragging = false;
}
public void researchMenu_MouseMoves(object sender, MouseEventArgs e)
{
if (dragging)
{
this.researchMenu.Location = new Point(e.X + this.researchMenu.Left - x, e.Y + this.researchMenu.Top - y);
}
}
它留下了自己的"幽灵"副本,就像应用程序在Windows XP中崩溃一样。
这是它正在做的事情的一个例子。
老实说,我不知道如何解决它,我认为可能是组框是透明的,但我将它们更改为不透明的颜色,并且仍然留下了"幽灵"。
如果没有关于如何绘制/动画的更多详细信息,看起来父级在拖动过程中没有更新。尝试在researchMenu_MouseMoves事件期间为父级添加某种重绘或绘制调用。