我的宏中有一个用户表单。我用标签替换了 ActiveX 按钮。每个 ActiveX 按钮都有一个加速键,它们都按预期工作。将 ActiveX 按钮更改为标签后,加速键不再适用于标签。我不确定。我将不胜感激任何让加速键再次工作的建议。谢谢您的帮助
问问题
1980 次
1 回答
1
Label 控件的 Accelerator 属性的行为是将焦点设置到 Tab 键顺序中的下一个控件。命令按钮的 Accelerator 的行为是调用其 Click 事件。您不能从加速键调用标签的单击事件或任何其他事件。
如果你想使用标签,你可以在标签之后放置文本框,并在 Textbox_Enter 事件中放置你想要的任何代码。我创建了两个标签和两个文本框。我将每个文本框的高度和宽度设为 1,因此它们几乎不可见。当按下标签的加速器时,焦点转到文本框,甚至触发了 Enter。
Private Sub TextBox1_Enter()
'do the thing the button would do
End Sub
有点hack和一些额外的设置,但它有效。
于 2015-07-21T19:31:32.767 回答