加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

dynamic – 在运行时VB6为表单上的每个控件添加一个事件处理程序

发布时间:2020-12-17 00:06:26 所属栏目:大数据 来源:网络整理
导读:我有一个VB6应用程序,我希望在其应用程序范围内的控件之间具有一致的行为.例如,其中一种行为是在获得焦点时突出显示文本框,在失去焦点时删除突出显示.我希望这种情况发生在每一种形式上. 我正在尝试做的是有一个子程序,当它们加载时可以被所有表单调用,这将
我有一个VB6应用程序,我希望在其应用程序范围内的控件之间具有一致的行为.例如,其中一种行为是在获得焦点时突出显示文本框,在失去焦点时删除突出显示.我希望这种情况发生在每一种形式上.

我正在尝试做的是有一个子程序,当它们加载时可以被所有表单调用,这将使这种行为发生.这样,我不必为每个单独的文本框手动编码以使其突出显示.

我试过让VB6在运行时将一个事件处理程序附加到一个控件,但它只是咆哮着我.我来自.Net背景,所以也许我接近VB6的错误.但是,如何在不必为每个控件手动编码的情况下获得所需的行为?

你也可以 “Subclass” Your TextBox Controls Using WithEvents.这里的优点是你可以在一个地方编码突出显示和去突出显示,而无需通过并替换所有现有的控件(如Scott建议的那样).

缺点是您必须将代码添加到所有表单的Form_Load事件中以“注册”该表单上的控件.但是,如果您想将该技术应用于每个控件,即使这样也不应该太糟糕;在这种情况下,您只需要编写一个循环遍历表单的.Controls集合并注册每个控件的函数.然后在每个表单的Form_Load事件中调用此函数.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读