2017-02-11 75 views
1

是否有任何方法可以在VBA下的Microsoft Access中的立即窗口中使用事件订阅者(例如使用Debug.Print)进行调试?事件订阅者在Microsoft Access VBA

+0

没有。即时窗口基本上是一个控制台,它甚至不包含用于显示文本的控件 - 它直接绘制到客户区。您需要能够直接从调试器挂接IO。 VBA \ 6程序员几十年来一直试图这样做,但没有成功...... – Comintern

+0

订阅什么事件?查看变量声明中使用的'WithEvents'关键字,例如'Dim WithEvents foo as Access.Form' –

回答

1

此代码是一个一站式的所有的Microsoft Access发射物体的...

Option Explicit 
'* In a class module 

Private WithEvents o_PageEvents As Access.Page 
Private WithEvents o__ControlInReportEvents As Access.[_ControlInReportEvents] 
Private WithEvents o_LabelEvents As Access.Label 
Private WithEvents o_RectangleEvents As Access.Rectangle 
Private WithEvents o_LineEvents As Access.Line 
Private WithEvents o_ImageEvents As Access.Image 
Private WithEvents o_CommandButtonEvents As Access.CommandButton 
Private WithEvents o_OptionButtonEvents As Access.OptionButton 
Private WithEvents o_OptionButtonInOptionEvents As Access.[_OptionButtonInOption] 
Private WithEvents o_CheckBoxEvents As Access.CheckBox 
Private WithEvents o_CheckBoxInOptionEvents As Access.[_CheckBoxInOption] 
Private WithEvents o_OptionGroupEvents As Access.OptionGroup 
Private WithEvents o_BoundObjectFrameEvents As Access.BoundObjectFrame 
Private WithEvents o_TextBoxEvents As Access.TextBox 
Private WithEvents o_ListBoxEvents As Access.ListBox 
Private WithEvents o_ComboBoxEvents As Access.ComboBox 
Private WithEvents o_ObjectFrameEvents As Access.ObjectFrame 
Private WithEvents o_PageBreakEvents As Access.PageBreak 
Private WithEvents o_ToggleButtonEvents As Access.ToggleButton 
Private WithEvents o_ToggleButtonInOptionEvents As Access.[_ToggleButtonInOption] 
Private WithEvents o_PaletteButtonEvents As Access.PaletteButton 
Private WithEvents o_SubFormEvents As Access.SubForm 
Private WithEvents o_SubReportEvents As Access.SubReport 
Private WithEvents o_CustomControlEvents As Access.CustomControl 
Private WithEvents o_CustomControlInReportEvents As Access.[_CustomControlInReport] 
Private WithEvents o_TabControlEvents As Access.TabControl 
Private WithEvents o_SectionEvents As Access.Section 
Private WithEvents o_SectionInReportEvents As Access.[_SectionInReport] 
Private WithEvents o_PageHdrFtrInReportEvents As Access.[_PageHdrFtrInReport] 
Private WithEvents o_FormEvents As Access.Form 
Private WithEvents o_ReportEvents As Access.Report 
Private WithEvents o_References_Events As Access.References 
Private WithEvents oDispAttachmentEvents As Access.Attachment 
Private WithEvents oDispEmptyCellEvents As Access.EmptyCell 
Private WithEvents oDispWebBrowserControlEvents As Access.WebBrowserControl 
Private WithEvents oDispNavigationButtonEvents As Access.NavigationButton 
Private WithEvents oDispNavigationControlEvents As Access.NavigationControl 

其使用的一些例子在这些链接中给出| Adding Classes WithEvents to MS Access Form | MS Access WithEvents in Class Module for OnClick Event |。

也是堆栈溢出类似的问题Click event handler withevents

+0

@S Meaden谢谢您的回应。不好意思,如果这是一个微不足道的问题,但我仍然困惑于如何使用上面的代码片段,例如通过传递其引用来打印出从某个对象触发的所有事件。你介意以一个例子更新答案吗?我真的很感激。 – falhumai

+0

我通常不会执行Access并且无法立即使其工作。我已经包含了一些显示示例的链接。 –

+0

非常感谢你! – falhumai