【问题标题】:Mnemonic for ComboBox组合框的助记符
【发布时间】:2012-11-05 19:11:46
【问题描述】:

我们如何为ComboBox 添加mnemonics

例如,在CheckBox 中,我们可以在标题中说“Check&BoxCaption”,注意“B”之前的“&”。在表单中,这个“B”带有下划线,我们可以通过按 Alt+B(作为键盘快捷键)来访问它。

但是如果是ComboBox,我们该怎么做呢?

对照ComboBox检查标签中Visual Studio选项页面上实现的助记符

我猜(查看上面的屏幕截图),我们在标签中针对ComboBox 创建了一个助记符。 在这种情况下,我们如何将其链接到ComboBox

【问题讨论】:

    标签: c# .net winforms visual-studio-2010 visual-studio


    【解决方案1】:

    控件本身不支持热键。这是通过标签控件处理的。由于标签无法获得焦点,因此选择标签会将焦点赋予 Tab 键顺序中的下一个控件。

    所以在你的表单中添加一个标签控件,并通过在热键字符之前插入'&'字符来给它一个热键。确保标签控件的选项卡索引值比您的组合框小一,以便组合框是标签之后的选项卡顺序中的下一个控件。

    这同样适用于其他控件,例如文本框和其他列表。

    【讨论】:

    • 谢谢..但是我们如何'给组合框一个标签'?抱歉,如果我的问题不清楚。
    • 请查看我的答案的更新以使其更加清晰。
    • 只是为了我自己的启迪,您是说标签与组合框严格基于其相对标签索引相关联吗?我只是问,因为这看起来很……奇怪。
    • 是的。这就是它的工作原理。标签无法获得焦点,因此焦点转到 Tab 键顺序中的下一个控件。
    • 我明白了。所以这并不是标签与组合框“关联”,它更像是一种黑客行为。您不能直接为组合框创建助记符,因此您可以为无法获得焦点的事物创建助记符,并确保接下来的内容是组合框。同样,非常奇怪,但 WinForms 也不是最出色的工具包。感谢您帮助我学习新知识。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多