Foxtable(狐表)用户栏目专家坐堂 → 如何动态增加控件,并且注册事件,可以拖动控件


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

主题:如何动态增加控件,并且注册事件,可以拖动控件

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


加好友 发短信
等级:三尾狐 帖子:659 积分:4686 威望:0 精华:0 注册:2013/6/11 17:51:00
如何动态增加控件,并且注册事件,可以拖动控件  发帖心情 Post By:2013/9/18 9:15:00 [只看该作者]

如何动态增加控件,并且注册事件,可以拖动控件

位置我自己会控制的


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/9/18 9:18:00 [只看该作者]

控件可以拖动,论坛有例子,代码在全局事件中写,只是需要判断控件名称!

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


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

论坛上有很多动态增加控件的例子,你可以找找看.

帮助也有狐表自身的动态增加控件




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


加好友 发短信
等级:三尾狐 帖子:659 积分:4686 威望:0 精华:0 注册:2013/6/11 17:51:00
  发帖心情 Post By:2013/9/18 10:34:00 [只看该作者]

主要是能够移动控件,用代码做专业报表

位置控制很慢,想自己弄个工具


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/9/18 10:43:00 [只看该作者]

拖动控件位置,狐表自身的功能即可解决!
[此贴子已经被作者于2013-9-18 10:43:10编辑过]

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


加好友 发短信
等级:版主 帖子:1693 积分:12135 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2013/9/18 11:02:00 [只看该作者]

狐表自身的

你可以该在窗口的全局事件里

 

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:控件移动.table

[此贴子已经被作者于2013-9-18 11:06:01编辑过]

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


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/9/18 12:03:00 [只看该作者]

MouseDown

e.Form.Text = e.X & "|" & e.Y

MouseUp(优点:不闪烁;缺点:不能即时看到控件移动,松开鼠标时才会看到新位置的控件)

If e.X & "|" & e.Y <> e.Form.Text Then
    e.Sender.Left = e.X + e.Sender.Left - e.Form.Text.Split("|")(0)   
    e.Sender.Top = e.Y + e.Sender.Top - e.Form.Text.Split("|")(1)  
End If

 

MouseMove(优点:能即时看到控件移动;缺点:控件较大时,会有闪烁。)

If e.Button = MouseButtons.Left Then
    If e.X & "|" & e.Y <> e.Form.Text Then
        e.Sender.Left = e.X + e.Sender.Left - e.Form.Text.Split("|")(0)
        e.Sender.Top = e.Y + e.Sender.Top - e.Form.Text.Split("|")(1)
    End If
End If
 

[此贴子已经被作者于2013-9-18 15:03:06编辑过]

 回到顶部