把.rc文件内容(貌似C++源码)翻译成中文
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了把.rc文件内容(貌似C++源码)翻译成中文相关的知识,希望对你有一定的参考价值。
我目的是...
说下情况,源码文件没有窗口和菜单的信息,同文件夹里面有个RC文件,都保存在RC文件里面,我想把它加进源码里面.在源码里面写这些东西(你们帮我翻译成中文就好,我自己写代码)
一句一句翻译
后缀为 RC 的文件.里面的内容
************************************************************
BEGIN
CONTROL "",编辑框_标题,"Edit",0x50010080,51,6,156,15,0x00000200
CONTROL "",编辑框_图标,"Edit",0x50010080,51,24,120,15,0x00000200
CONTROL "浏览(&B)",按钮_浏览,"Button",0x50010000,171,24,36,15
CONTROL "",热键框_运行热键,"msctls_hotkey32",0x50010000,51,42,54,15
CONTROL "保存设置(&S)",按钮_保存,"Button",0x50010001,108,45,60,15
CONTROL "取消(&C)",按钮_取消,"Button",0x50010000,168,45,39,15
CONTROL "自定义标题:",标签_标题,"Static",0x50000202,3,9,48,12
CONTROL "自定义图标:",标签_图标,"Static",0x50000202,3,27,48,12
CONTROL "运行快捷键:",标签_快捷键,"Static",0x50000202,3,45,48,12
END
DIALOG_OPT DIALOGEX -2,-13,118,124
CAPTION "程序设置"
FONT 8,"MS Sans Serif",0,0,0
STYLE 0x90C80800
EXSTYLE 0x00000088
BEGIN
CONTROL "开启此项",选择框_高画质,"Button",0x50010003,54,6,54,9
CONTROL "开启此项",选择框_倒影,"Button",0x50010003,54,21,54,9
CONTROL "开启此项",选择框_自动吸附,"Button",0x50010003,54,36,54,9
CONTROL "开启此项",选择框_双向浮动,"Button",0x50010003,54,51,54,9
CONTROL "",编辑框_浮动距离,"Edit",0x50012000,54,66,54,15,0x00000200
CONTROL "",编辑框_双击冷却,"Edit",0x50012000,54,84,54,15,0x00000200
CONTROL "保存设置(&S)",按钮_保存_OPT,"Button",0x50010000,3,105,66,15
CONTROL "取消(&C)",按钮_取消_OPT,"Button",0x50010000,69,105,45,15
CONTROL "高画质:",标签_高画质,"Static",0x50000202,0,6,54,9
CONTROL "倒影:",标签_倒影,"Static",0x50000202,0,21,54,9
CONTROL "自动吸附:",标签_自动吸附,"Static",0x50000202,0,36,54,9
CONTROL "浮动距离:",标签_浮动距离,"Static",0x50000202,0,69,54,9
CONTROL "双向浮动:",标签_浮动方向,"Static",0x50000202,0,52,54,9
CONTROL "双击冷却时间:",标签_双击冷却,"Static",0x50000202,0,87,54,9
END
先看这儿!~!!!
在代码最前:声明了好多东西 #define DIALOG_MAIN 1000等。我没写
如:#define 标签_双击冷却 1214
这个也说下。。。 定义标签 名为:双击冷却 对吧?那1214啥意思
定义完了就是下面的。
LANGUAGE 4,2
DIALOG_MAIN DIALOGEX 0,0,150,100
FONT 8,"MS Sans Serif",0,0,0
STYLE NOT 0x10000000|0x80000800
EXSTYLE 0x00080088
BEGIN
END
100 ICON DISCARDABLE "../icon.ico"
MENU_右键菜单 MENU
BEGIN
POPUP "右键菜单"
BEGIN
MENUITEM "设置选项(&S)",MENU_SET
MENUITEM "删除选项(&D)",MENU_DEL
MENUITEM SEPARATOR
MENUITEM "总在最前(&A)",MENU_TOP
MENUITEM "锁定位置(&L)",MENU_LOCK
MENUITEM "程序设置(&O)",MENU_OPT
MENUITEM SEPARATOR
MENUITEM "退出程序(&E)",MENU_EXIT
END
END
DIALOG_SET DIALOGEX -2,-13,211,64
CAPTION "设置"
FONT 8,"MS Sans Serif",0,0,0
STYLE 0x90C80800
EXSTYLE 0x00000088
*********************************
接着才是详细提问里面的。
如果你想在运行时添加控件的话,仅仅修改RC文件是不够的。
仍需要在程序中加载资源。追问
怎么加载啊?
我看到源码里面常量的 值 等于(一一对应) RC文件里面的。
可是我该怎么改啊?在源码里面,只是个常量,又不是对应的组件(比如常量值** 代表 菜单)
我怎么改!!!!
追加在RC文件中即可
如菜单就需要类似一个
MENU_AMENU MENU
BEGIN
POPUP "文件"
BEGIN
MENUITEM "打开(&O)",MENU_OPEN
....
END
END
在程序中CreateMenu..代入MENU_AMENU就是了。
不能写到源码中扔掉RC文件吗?
追答可以,但是有RC文件更方便维护代码不是吗?
参考技术B 这已经是描述性的语言了,要是看不懂 你还是去查英文字典吧 参考技术C 这些控件都是需要先在类里面进行声明,然后会自动生成的*.rc文件,只更改rc文件,不能编译通过,详细解决查看MFC设计相关书籍 参考技术D 这个MSDN里已经说得挺清楚的了,具体看“Resource-Definition Statements”这一节,根据里面的语法要求也可以自己写RC文件了。也可参考一个《Windows程序设计》。 第5个回答 2011-08-15 #define 标签_双击冷却 1214 1214是个资源的ID,标识唯一的资源,跟身份证一样啦,就是身份证跟名称对应追问我看到源码里面常量的 值 等于 RC文件里面的。
可是我该怎么改啊?在源码里面,只是个常量,又不是对应的组件(比如常量值** 代表 菜单)
我怎么改!!!!
C++程序编译过程
C++程序编译的四个步骤:编译预处理,编译优化,汇编,链接。
- 编译预处理:处理以 # 开头的指令,将源码 .cpp 文件处理成 .i 文件。
- 编译优化:将 .i 文件翻译成 .s 汇编代码。
- 汇编:将汇编代码 .s 翻译成机器指令 .o 文件。
- 链接:为了防止.cpp文件中的函数引用了另一个.cpp文件中的函数或者调用了某个库函数,链接的目的就是将这些文件与目标(库函数)文件连接成一个整体,从而生成可执行程序.exe文件。
预处理器:头文件展开,条件编译展开,宏定义替换,注释删除。
- gcc -E 可得到预处理后的文本,扩展名为.i。
- C++预处理不做任何语法检查,因为预处理不属于C++语句,这也是宏定义不加分号的原因。
编译器:将高级语言翻译成机器语言,在该语言下,每一条语句都有对应标准转换为低级的机器处理指令。
- gcc -S选项可以得到编译后的汇编代码文件,扩展名为.s。
汇编器:生成目标文件。
- gcc -c选项可以得到汇编后的结果文件,扩展名为.o。
链接器:生成可执行文件或库文件。
- 静态链接:将静态链接库中的代码拷贝至可执行文件,这样可执行程序具备了程序运行的所有内容,速度快。但有可能会出现重复拷贝同一条语句,所以文件大,浪费空间。扩展名为.a。
- 动态链接是在程序执行时才载入引用的库,因此节省内存,方便更新。但这样每次执行都需要链接,所以相比静态库有一定性能损失。
以上是关于把.rc文件内容(貌似C++源码)翻译成中文的主要内容,如果未能解决你的问题,请参考以下文章