Foxtable(狐表)用户栏目专家坐堂 → [求助]在代码中如何增加控件事件


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

主题:[求助]在代码中如何增加控件事件

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


加好友 发短信
等级:婴狐 帖子:38 积分:367 威望:0 精华:0 注册:2012/10/11 16:00:00
[求助]在代码中如何增加控件事件  发帖心情 Post By:2014/6/24 9:08:00 [显示全部帖子]

例如有2个按钮

其中按钮1单击事件为
private sub button1_click() AddHandle button1.Click
{源码...}
end sub

其中按钮2想要增加按钮1中事件,如何增加?

是否是这样:AddHandle button2.Click , AddressOf button1.Click

但是这样编译时发生错误。


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


加好友 发短信
等级:婴狐 帖子:38 积分:367 威望:0 精华:0 注册:2012/10/11 16:00:00
  发帖心情 Post By:2014/6/24 10:29:00 [显示全部帖子]

 尝试过了,但在全局单击事件中没反映。

有个frmLogin的窗体,窗体中有2个按钮,1个按钮名称是"btnLogin",另一个动态创建的按钮名称是"_btnLogin"。

窗体frmLogin中的Click全局代码如下:

Forms("frmLogin").Text = e.Sender.Name
Select Case e.Sender.Name
    Case "_btnLogin"
        Forms("frmLogin").Close()
        Forms("frmMain").Open()  ' 另一个窗体
    Case "_btnCancel"
        Syscmd.Project.Exit()  ' 退出Foxtable
End Select

运行窗体后,单击"_btnlLogin"按钮没反映。


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


加好友 发短信
等级:婴狐 帖子:38 积分:367 威望:0 精华:0 注册:2012/10/11 16:00:00
  发帖心情 Post By:2014/6/24 10:44:00 [显示全部帖子]

 试过了,但没有触发msgbox函数。

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


加好友 发短信
等级:婴狐 帖子:38 积分:367 威望:0 精华:0 注册:2012/10/11 16:00:00
  发帖心情 Post By:2014/6/24 10:50:00 [显示全部帖子]

 噢,可能是控件动态增加的方式不对,导致全局事件没能触发。
我是这样动态增加控件的:
Forms("frmLogin").Panel.Controls.Add(btnAdd)


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


加好友 发短信
等级:婴狐 帖子:38 积分:367 威望:0 精华:0 注册:2012/10/11 16:00:00
  发帖心情 Post By:2014/6/24 10:58:00 [显示全部帖子]

 我尝试使用你们的方式动态增加控件,但是我增加的是第三方的控件,跟WinForm.Control的控件类型不兼容。
你们增加控件的方法:e.Form.AddControl(x)
其中x是第三方控件,在编译的守候发生类型不兼容的错误。


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


加好友 发短信
等级:婴狐 帖子:38 积分:367 威望:0 精华:0 注册:2012/10/11 16:00:00
  发帖心情 Post By:2014/6/24 11:05:00 [显示全部帖子]

目前的问题是,该怎么给动态控件增加自己的事件?

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


加好友 发短信
等级:婴狐 帖子:38 积分:367 威望:0 精华:0 注册:2012/10/11 16:00:00
  发帖心情 Post By:2014/6/24 11:35:00 [显示全部帖子]

应该可以了,但是每次修改全局代码时,都必须重启Foxtable,非常的不方便。

 回到顶部