BCGControlBar本地化(汉化)详解
2017-11-20 10:15
288 查看
转载自:https://www.evget.com/article/2012/6/18/17004.html
概述:BCGControlBar本地化机制提供了一个创建多语言应用程序的非常简单和可靠的方法。本文将为你详细介绍如何进行BCGControlBar本地化(汉化)。
BCGControlBar本地化机制提供了一个创建多语言应用程序的非常简单和可靠的方法。
BCGControlBar语言包文件:
本地化文件位于BCGCBPro\L.*目录中,其中* - 语言名称前缀(FRA - 法国,ITA - 意大利,...)。特定语言资源DLLs位于BCGControlBar\Bin目录下:
BCGControlBar DLL本地化:
请将以下成员加入到您的应用程序类中:
HINSTANCE m_hinstBCGCBProRes;
在应用的InitiInstance()中添加DLL资源初始化:
m_hinstBCGCBProRes = LoadLibrary (_T("BCGCBProRes***.dll")); // *** - language
BCGCBSetResourceHandle (m_hinstBCGCBProRes);
卸载ExitInstance中的DLL资源:
FreeLibrary (m_hinstBCGCBProRes);
BCGControlBar静态库本地化:
在该项目的“Resource Includes”对话框(View | Resource Includes)修改
#include "BCGCBPro.rc"
为:
#define _BCGCBPRO_STATIC_
#include "L.***\BCGControlBar.rc" // *** language
#pragma code_page(code)
例如:
#define _BCGCBPRO_STATIC_
#include "L.FRA\BCGControlBar.rc"
#pragma codepage(1252)
如何将库资源翻译成新语言?
在BCGControlBar目录下,创建新的子目录叫做“L.***”,其中“***”是语言的名称前缀;
从任何其他现有的语言目录复制下列文件:
BCGCBRes.dsp
BCGCBRes.dsw
从BCGControlBar目录复制BCGCBPro.rc(英语资源)。将它重新命名为BCGControlBar.rc;
在Visual C++中,打开BCGCBRes项目;
删除资源的版本信息;
将DLL输出的文件名更改为“..\..\bin\BCGCBProRes***.dll”(*** - 表示语言名称的前缀);
转换对话框,字符串和菜单资源;
创建项目。因为BCGControlBar.rchas参考的BCGControlBar的共同资源(位图,图标和光标),会要求你创建“RES”子目录。这是Visual Studio资源编辑器的一个问题 - 它不解析从项目设置以正确的方式获得路径。只需回答是,L.***\res就会被创建。当资源文件创建完成后(静态和DLL模式),将采用正确的RES路径(BCGControlBar dir\RES)。语言资源DLL将被放置到BIN目录。
概述:BCGControlBar本地化机制提供了一个创建多语言应用程序的非常简单和可靠的方法。本文将为你详细介绍如何进行BCGControlBar本地化(汉化)。
BCGControlBar本地化机制提供了一个创建多语言应用程序的非常简单和可靠的方法。
BCGControlBar语言包文件:
本地化文件位于BCGCBPro\L.*目录中,其中* - 语言名称前缀(FRA - 法国,ITA - 意大利,...)。特定语言资源DLLs位于BCGControlBar\Bin目录下:
BCGCBProResCHS.dll | Chinese | BCGCBProResITA.dll | Italian | ||||
BCGCBProResCSY.dll | Czech | BCGCBProResJPN.dll | Japanese | ||||
BCGCBProResDEN.dll | Danish | BCGCBProResKOR.dll | Korean | ||||
BCGCBProResDEU.dll | German | BCGCBProResPTG.dll | Portuguese | ||||
BCGCBProResDUT.dll | Dutch | BCGCBProResROM.dll | Romanian | ||||
BCGCBProResELL.dll | Greek | BCGCBProResRUS.dll | Russian | ||||
BCGCBProResESP.dll | Spanish | BCGCBProResSKY.dll | Slovak | ||||
BCGCBProResFRA.dll | French | BCGCBProResSLV.dll | Slovenian | ||||
BCGCBProResHUN.dll | Hungarian | BCGCBProResTRK.dll | Turkish |
请将以下成员加入到您的应用程序类中:
HINSTANCE m_hinstBCGCBProRes;
在应用的InitiInstance()中添加DLL资源初始化:
m_hinstBCGCBProRes = LoadLibrary (_T("BCGCBProRes***.dll")); // *** - language
BCGCBSetResourceHandle (m_hinstBCGCBProRes);
卸载ExitInstance中的DLL资源:
FreeLibrary (m_hinstBCGCBProRes);
BCGControlBar静态库本地化:
在该项目的“Resource Includes”对话框(View | Resource Includes)修改
#include "BCGCBPro.rc"
为:
#define _BCGCBPRO_STATIC_
#include "L.***\BCGControlBar.rc" // *** language
#pragma code_page(code)
例如:
#define _BCGCBPRO_STATIC_
#include "L.FRA\BCGControlBar.rc"
#pragma codepage(1252)
如何将库资源翻译成新语言?
在BCGControlBar目录下,创建新的子目录叫做“L.***”,其中“***”是语言的名称前缀;
从任何其他现有的语言目录复制下列文件:
BCGCBRes.dsp
BCGCBRes.dsw
从BCGControlBar目录复制BCGCBPro.rc(英语资源)。将它重新命名为BCGControlBar.rc;
在Visual C++中,打开BCGCBRes项目;
删除资源的版本信息;
将DLL输出的文件名更改为“..\..\bin\BCGCBProRes***.dll”(*** - 表示语言名称的前缀);
转换对话框,字符串和菜单资源;
创建项目。因为BCGControlBar.rchas参考的BCGControlBar的共同资源(位图,图标和光标),会要求你创建“RES”子目录。这是Visual Studio资源编辑器的一个问题 - 它不解析从项目设置以正确的方式获得路径。只需回答是,L.***\res就会被创建。当资源文件创建完成后(静态和DLL模式),将采用正确的RES路径(BCGControlBar dir\RES)。语言资源DLL将被放置到BIN目录。
相关文章推荐
- MFC界面库BCGControlBar新版功能详解二:对话框和表单
- MFC界面库BCGControlBar v25.0新功能详解五之对话框和表单等
- MFC界面库BCGControlBar v25.0新功能详解二:网格和报表控件
- MFC界面库BCGControlBar新版功能详解四:示例和其他功能
- BCGControlBar功能特点详解
- MFC界面库BCGControlBar v25.0新功能详解六:属性网格和其他
- MFC界面库BCGControlBar v25.0新功能详解四:可视化容器和控件
- MFC界面库BCGControlBar v25.0新功能详解一:可视化主题
- 关于bcgcontrolbar汉化的总结
- MFC界面库BCGControlBar新版功能详解三:图表、网格、报表控件
- MFC界面库BCGControlBar v25.0新功能详解三:Ribbon Bar
- MFC界面库BCGControlBar新版功能详解三:图表、网格、报表控件
- MFC界面库BCGControlBar新版功能详解一:Ribbon Bar
- 【重大更新】MFC用户界面套包BCGControlBar Pro for MFC发布v25.0|附下载
- BCGControlBar(MFC)创建类似微软Office2013用户体验
- BCGcontrolBar(八) Ribbon图标变换
- MFC界面库BCGControlBar v25.2新版亮点:支持Visual Studio 2017 RC
- MFC界面库BCGControlBar v25.1新版亮点三:工具栏和菜单等
- BCGControlBar使用方法
- BCGControlBar 7.31的使用方法