Foxtable(狐表)用户栏目专家坐堂 → 我得到窗口在屏幕位置,但是控件的位置不是以这个为起点


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

主题:我得到窗口在屏幕位置,但是控件的位置不是以这个为起点

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


加好友 发短信
等级:四尾狐 帖子:876 积分:5929 威望:0 精华:0 注册:2014/8/3 12:15:00
我得到窗口在屏幕位置,但是控件的位置不是以这个为起点  发帖心情 Post By:2014/10/20 0:33:00 [只看该作者]

以下是控件的click事件:

Dim x As Integer
Dim y As Integer
x = System.Windows.Forms.Cursor.Position.X.toString()
y = System.Windows.Forms.Cursor.Position.y.toString()
e.Form.controls("Button2").left=x-e.form.baseform.left
e.Form.controls("Button2").Top=y-e.form.baseform.top
e.Form.controls("Button2").Visible=True

通过这个可以获得窗口位置,但是控件的位置总是偏差一个窗口标题栏高度(Y)和窗口边框宽度(x)的值

怎么解决呢?

能不能进一步实现拖着控件走呢?

 

我最终目的是想实现在窗口中绘制流程图,最后实现自动绘制流程图功能

[此贴子已经被作者于2014-10-20 0:35:34编辑过]

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/10/20 8:27:00 [只看该作者]

有相差,那么你就补一些就好了.比如相差20 就 -20

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/10/20 9:07:00 [只看该作者]

 不是告诉过你方法了么?你这样获取,就必须写死相差的宽度和高度


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


加好友 发短信
等级:四尾狐 帖子:876 积分:5929 威望:0 精华:0 注册:2014/8/3 12:15:00
  发帖心情 Post By:2014/10/21 20:50:00 [只看该作者]

从哪里看出来窗口标题栏高和边框宽度呢

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/10/21 20:51:00 [只看该作者]

 只能大概预估。

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


加好友 发短信
等级:四尾狐 帖子:876 积分:5929 威望:0 精华:0 注册:2014/8/3 12:15:00
  发帖心情 Post By:2014/10/21 21:02:00 [只看该作者]

如何打开*。table例子文件

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/10/21 21:07:00 [只看该作者]

 呃,你如果是开发版的,就去下载一个商业版的foxtable,安装后,就能用那个打开。

 回到顶部