弹出/不弹出表单上的右键菜单-MS Access VBA

时间:2018-08-20 11:53:14

标签: vba forms ms-access right-click

我遇到以下问题: 我正在尝试使用快捷菜单栏(右键单击后显示)作为过滤现有查询的工​​具。查询在表单中具有基于文本框的条件,快捷菜单栏应允许输入单词,将其传递到文本框并实现过滤。窗体的弹出窗口属性设置为“是”后,一切都将正常工作。 Poblem以常规形式开始(弹出属性设置为“ no”)。 在这种情况下,快捷菜单栏仅显示控制按钮(msoControlButton),而没有显示编辑框(msoControlEdit)或组合框(msoControlComboBox)。

有人知道如何解决此问题吗?我数据库中的所有其他表单都是非弹出式表单,而其他视觉属性中的一种表单看起来笨拙。

编辑: 这是命令栏的代码:

Dim cmb As CommandBar
Dim CBB_nr1 As CommandBarButton

menu_name = "Menu"
CommandBars(menu_name).Delete

Set cmb = CommandBars.Add(menu_name, msoBarPopup, False, False)

With cmb
Set CBB_nr1 = .Controls.Add(msoControlEdit, , , , True)
    With CBB_nr1
        .BeginGroup = True
        .Caption = "Search:"
        .OnAction = "=Search()"
    End With
End With`

以下是将值传递到文本框的代码(放置在Function Search()中):

Forms("Form_name").Textbox_name = Nz(CommandBars("Menu").Controls("Search:").Text, "*")

主要问题是,如果窗体不在弹出模式下,则“文本框和组合框”行不会显示在创建的命令栏中。

0 个答案:

没有答案