Foxtable(狐表)用户栏目专家坐堂 → [求助]移动无边框窗口?


  共有3221人关注过本帖树形打印复制链接

主题:[求助]移动无边框窗口?

帅哥哟,离线,有人找我吗?
poiokm26
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:165 积分:1431 威望:0 精华:1 注册:2015/12/7 19:14:00
[求助]移动无边框窗口?  发帖心情 Post By:2016/6/20 12:43:00 [只看该作者]

论坛里有例子,不过超出帮助范围的知识,一时半刻理解不全。
改用折中的方法,参考移动控件的例子。
定义全局变量x,y.
鼠标按下事件:
 If e.Button = MouseButtons.Left Then
     vars("x") = e.X
     vars("y") = e.Y
  End If        

鼠标移动事件:
 If e.Button = MouseButtons.Left Then
   e.Sender.Left += e.x - vars("x")
   e.Sender.top += e.y - vars("y")
end if 

上面的代码用在窗口中的控件是没有问题的。

但是用在无边框的独立窗口。
panel鼠标按下事件
If e.Button = MouseButtons.Left Then
     vars("x") = e.X+ e.Form.BaseForm.left
     vars("y") = e.Y+e.Form.BaseForm.Top
End If

移动事件:
If e.Button = MouseButtons.Left Then
 
 e.Form.BaseForm.left =e.Form.BaseForm.left+(e.x+e.Form.BaseForm.left )- vars("x")
      e.Form.BaseForm.Top= e.Form.BaseForm.Top+(e.y+e.Form.BaseForm.Top )- vars("y")

End If


效果倒是出来了。但是轻轻拉一下,窗口飞到不知那去了。
这原理是一样的,怎么效果就差别这么大呢。



(对不起,搞定了。。直接删去+e.Form.BaseForm.left)

有点不美观,拖个小尾巴。要怎么解决呢。
[此贴子已经被作者于2016/6/20 14:26:06编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/20 20:07:00 [只看该作者]

 拖个小尾巴指什么?做个例子发上来。


 回到顶部
帅哥哟,离线,有人找我吗?
poiokm26
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:165 积分:1431 威望:0 精华:1 注册:2015/12/7 19:14:00
  发帖心情 Post By:2016/6/20 20:47:00 [只看该作者]

就是拖动的时候重影。就像window的纸牌游戏,赢了就有一排重复的图标。

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:无边框窗体实现基本操作.table

附件是论坛下载的例子,窗口2 才是我自己做的。

 

编程学到关于DLL学不下去啊。。

 


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/20 20:52:00 [只看该作者]

 测试没问题啊,什么重影。

 回到顶部
帅哥哟,离线,有人找我吗?
poiokm26
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:165 积分:1431 威望:0 精华:1 注册:2015/12/7 19:14:00
  发帖心情 Post By:2016/6/20 21:01:00 [只看该作者]

窗口2 才是我做的


图片点击可在新窗口打开查看此主题相关图片如下:011.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/20 21:07:00 [只看该作者]

 窗口1有没有问题?我两个测试,都没问题啊。

 回到顶部
帅哥哟,离线,有人找我吗?
poiokm26
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:165 积分:1431 威望:0 精华:1 注册:2015/12/7 19:14:00
  发帖心情 Post By:2016/6/20 21:12:00 [只看该作者]

窗口1是论坛下载原样,没有问题。

 

窗口2自己做的,拖快一点就会有这样的情况


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/6/20 21:43:00 [只看该作者]

 要像窗口1那样处理一下。照抄就好。有什么问题?

 回到顶部