首页 > 解决方案 > 如何更改 MS Access 表单上的 _Click() 事件?

问题描述

我希望能够简化我的用户界面。我想让一组命令按钮根据用户选择更改 _On_Click() 事件。例如:

主题选择:cmd1:“会员报告”,cmd2:“管理报告”,cmd3:“其他报告 - 待定”

如果用户选择 cmd1,则子主题按钮属性会更改以允许用户打开该类别中的报告。

子主题选择:cmd4:“所有成员”,cmd5:“活跃成员”等。

如果用户选择 cmd2: 则 on_Click 事件将更改为在“管理报告”组中打开报告。

在此先感谢您的帮助。

标签: vbaformsms-access

解决方案


我会使用 3 个主切换按钮并将下摆放入选项组框架(我们称之为 FrameMain)。将按钮的选项值设置为 1、2、3。创建与子主题一样多的常规按钮(我们称它们为 cmd1_1、cmd1_2、cmd2_1....)并将它们的属性 Visible 设置为 False 并将 Tag 设置为 Sub。现在创建事件 FrameMain_AfterUpdate:

Private Sub FrameMain_AfterUpdate()
    Dim ctl As Control
    For Each ctl In Me.Controls
        If ctl.Tag = "Sub" Then
            ctl.Visible = False
        End If
    Next
    Select Case Me.FrameMain
        Case 1
            cmd1_1.Visible = True
            cmd1_2.Visible = True
        Case 2
            cmd2_1.Visible = True
            cmd2_2.Visible = True
        Case 3
            cmd3_1.Visible = True
            cmd3_2.Visible = True
    End Select
End Sub

您现在可以为所有子按钮创建 On_Click() 事件以打开所需的报告。

您也可以使用Switch board(在 Internet 上搜索如何创建它)。


推荐阅读