C#无边框窗体被控件覆盖后编写代码怎么拖动不了窗体
答案:3 悬赏:50 手机版
解决时间 2021-03-25 00:33
- 提问者网友:轮囘Li巡影
- 2021-03-24 16:37
C#无边框窗体被控件覆盖后编写代码怎么拖动不了窗体
最佳答案
- 五星知识达人网友:狂恋
- 2021-03-24 17:12
问题没有描述清楚,也许大概可能是你自定义拖动的方法没写好,我这正好有一个实例:
#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);
}
}
全部回答
- 1楼网友:你哪知我潦倒为你
- 2021-03-24 18:21
无边框窗体都是固定显示的吧。所以拖不了!
- 2楼网友:野味小生
- 2021-03-24 17:48
如果你的鼠标事件是写在被覆盖的窗体上的话肯定是不管用的,建议弄一个专门获取拖动事件的控件,在此控件上不要覆盖任何控件这样就能解决拖动的问题了。比如给主窗体留个边缘,用此边缘来获取鼠标事件就行了。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯