强调标签C ++的第一个字母(下划线未显示)

时间:2015-04-06 14:20:19

标签: c++ visual-studio-2010 user-interface mfc

问题: 我希望强调某些静态文本控件的第一个字母(例如Login和Password)。当按下ALT键时,字母会加下划线。

我尝试了什么: 在C#中,我能够通过使用&符号来实现这一点。例如"&登录"或"&密码"。我试图在C ++中找到一个类似的方法。下图显示了C#中的一个示例:

Example

我在Visual Studio 2010中使用MFC / C ++。

修改 添加了有关ALT密钥的信息。以下是我在Visual Studio 2010属性框中尝试的示例。我在"标题"的文字前面加了一个&符号。

example 2

当我在调试器中运行我的程序时,第一个字母没有下划线(直到按ALT为止): enter image description here

2 个答案:

答案 0 :(得分:1)

菜单和静态控件之间存在根本区别。

要在菜单中执行此操作,您就像在C#中一样。这是在C ++项目中编辑菜单的屏幕截图:

enter image description here

......这是结果:

enter image description here

对于静态控件,您必须清除控件的SS_NOPREFIX样式才能获得相同的行为。然而,我的观察是,在某些情况下,下划线没有显示(但我还没有确定下划线没有显示的确切情况 - 我认为何时发生,我通过更改字体来修复它,但我不记得确定。)

答案 1 :(得分:1)

在SO社区的帮助下,似乎在所需的带下划线的字母之前使用符号(&)符号是正确的方法。我的个人计算机上有一个设置,可以隐藏带下划线的字母,直到按下ALT键为止。

根据MSDN:

  

用户通常必须按ALT才能查看访问密钥指定。为确保在整个开发过程中解决这些问题,请将计算机设置为持久显示访问密钥。   enter image description here

在Windows 8中:打开控制面板 - >轻松访问中心 - >使键盘更易于使用。

在屏幕底部,选中“下划线键盘快捷键和访问键”。