C#无边框窗体被控件覆盖后编写代码怎么拖动不了窗体
3个回答
展开全部
问题没有描述清楚,也许大概可能是你自定义拖动的方法没写好,我这正好有一个实例:
#region 拖动窗口
private Point offset;
private void panelBG_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
Point cur = MousePosition;
offset = new Point(cur.X - this.Left, cur.Y - this.Top);
}
}
private void panelBG_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
Point cur = MousePosition;
this.Location = new Point(cur.X - offset.X, cur.Y - offset.Y);
}
}
#region 拖动窗口
private Point offset;
private void panelBG_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
Point cur = MousePosition;
offset = new Point(cur.X - this.Left, cur.Y - this.Top);
}
}
private void panelBG_MouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
Point cur = MousePosition;
this.Location = new Point(cur.X - offset.X, cur.Y - offset.Y);
}
}
展开全部
如果你的鼠标事件是写在被覆盖的窗体上的话肯定是不管用的,建议弄一个专门获取拖动事件的控件,在此控件上不要覆盖任何控件这样就能解决拖动的问题了。比如给主窗体留个边缘,用此边缘来获取鼠标事件就行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
无边框窗体都是固定显示的吧。所以拖不了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询