c++ - 符号 (&) 在 .rc 文件中的含义

标签 c++ windows winapi visual-c++ resource-files

在 Windows 上使用 WIN32 编写 Windows 应用程序时,要非动态加载资源,必须加载一个 *.rc 文件,该文件包含用于定义应用程序中常见功能的资源定义语句,例如按钮和菜单。在阅读 WIN32 API 的教程时,来自 WinProg ,我遇到了这段让我困惑的代码:

IDR_MYMENU MENU
BEGIN
    POPUP "&File"
    BEGIN
        MENUITEM "E&xit", ID_FILE_EXIT
    END

    POPUP "&Stuff"
    BEGIN
        MENUITEM "&Go", ID_STUFF_GO
        MENUITEM "G&o somewhere else", 0, GRAYED
    END
END

看了上面的代码,就明白是什么功能了。我自己理解代码在 .rc 文件中的作用,但让我感到困惑的是符号 (&),它在字符串,例如 "G&o somewhere else"(在 G 和 O 之间),或 "E&xit"(在 E 和 X 之间)。我对 Stack Overflow 的具体问题是:.rc 文件中的符号是什么意思?在编写应用程序时我必须把它们放在哪里?我已经查看了 MSDN描述文件功能的链接,但我无法在文档中得到答案。

最佳答案

那些 & 仅用于菜单,它们定义了 "menu access keys", or "mnemonics" ,也被其他人称为加速器和快捷方式。是的,术语过多且令人困惑。

更多阅读:why you probably didn't realize these were there .

关于c++ - 符号 (&) 在 .rc 文件中的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38338426/

相关文章:

c - 如何在C中最小化到系统托盘

c++ - 为多个显示器设置 OpenGL

c++ - 使用 Visual Studio 2008 使用 Makefile 构建 C++ 项目

c++ - 显式默认/删除的函数可以在 ref 限定符上重载吗?

c++ - 初始化构造函数 C++

c++ - 继承std::ostream 和QString 的operator<< 的类

用于 STL 容器的 C++ IDE

windows - findstr ms-dos 命令不会搜索子目录

java - 来自不同 Java 线程的 JNI native 调用是否按顺序进行?

c - 在不使用第 3 方库的情况下基于 C 中的 char* 的多平台 Unicode 处理?