我用的是BCGCBPro。把BCGCBResCHS.dll拷贝到了*\BCGCBPro\Bin中。然后按照说明做:
本地化 BCGControlBar DLL 版本:添加如下成员到你的应用程序类中: HINSTANCE m_hinstBCGCBRes;在应用程序的InitiInstance () 中添加 DLL 资源初始化: m_hinstBCGCBRes = LoadLibrary (_T("BCGCBResCHN.dll"));
BCGCBProSetResourceHandle (m_hinstBCGCBRes);
Unload resource DLL in ExitInstance:
FreeLibrary (m_hinstBCGCBRes);
但是依然不能正常显示菜单中的中文。同时弹出菜单的check图标和workspace的自动隐藏图标和以前不同了,注释以上代码以后恢复。跟踪了一下LoadLibrary成功返回,BCGCBProSetResourceHandle函数是void的。
请用过的高手来帮帮忙。
还有这个东西稳定吗?我看到官方网站论坛上有不少报告的bug。
本地化 BCGControlBar DLL 版本:添加如下成员到你的应用程序类中: HINSTANCE m_hinstBCGCBRes;在应用程序的InitiInstance () 中添加 DLL 资源初始化: m_hinstBCGCBRes = LoadLibrary (_T("BCGCBResCHN.dll"));
BCGCBProSetResourceHandle (m_hinstBCGCBRes);
Unload resource DLL in ExitInstance:
FreeLibrary (m_hinstBCGCBRes);
但是依然不能正常显示菜单中的中文。同时弹出菜单的check图标和workspace的自动隐藏图标和以前不同了,注释以上代码以后恢复。跟踪了一下LoadLibrary成功返回,BCGCBProSetResourceHandle函数是void的。
请用过的高手来帮帮忙。
还有这个东西稳定吗?我看到官方网站论坛上有不少报告的bug。
BCGControlBar是有不少问题。比如我在MDI中插入一个OLE对象,然后将子窗口最大化,现场激活对象两次后,就会出错。但不将子窗口最大化就没有问题。
BCGCBResCSY.dll 捷克 BCGCBResJPN.dll 日本
BCGCBResDEN.dll 丹麦 BCGCBResKOR.dll 韩国
BCGCBResDEU.dll 德国 BCGCBResPTG.dll 葡萄牙
BCGCBResELL.dll 希腊 BCGCBResRUS.dll 俄罗斯
BCGCBResESP.dll 西班牙 BCGCBResSKY.dll 斯洛伐克
BCGCBResFRA.dll 法国 BCGCBResSLV.dll 斯洛法尼亚
BCGCBResHUN.dll 匈牙利 本地化 BCGControlBar DLL 版本:添加如下成员到你的应用程序类中: HINSTANCE m_hinstBCGCBRes;
在应用程序的InitiInstance () 中添加 DLL 资源初始化: m_hinstBCGCBRes = LoadLibrary (_T("BCGCBRes***.dll")); // *** - language
BCGCBSetResourceHandle (m_hinstBCGCBRes);
Unload resource DLL in ExitInstance: FreeLibrary (m_hinstBCGCBRes);本地化静态库版本:在项目的 "资源包含" 对话框中 (View | Resource Includes) 修改#include "bcgcontrolbar.rc"
to
#include "L.***\bcgcontrolbar.rc" // *** language (e.g. #include "L.FRA\bcgcontrolbar.rc")
怎样把库资源翻译成新的语言在你的 BCGControlBar 目录 中, 建立一个新的子目录名为 "L.***" ,其中 "***" 是一个语言名前缀。
从任何一个其他语言的子目录中拷贝如下文件: bcgcbarres.cpp
bcgcbarres.dsp
bcgcbarres.dsw
复制 bcgcbarres.rc (English resources) ,来源: BCGControlBar 目录
在 Visual C++中打开 bcgcbarres 项目
清除资源版本信息
改变 DLL 输出文件名为 "..\..\bin\BCGCBRes***.dll" (*** - 是一个语言名前缀)
翻译对话框、字符串和菜单资源。
编译链接该项目。因为 bcgcbarres.rc 指向普通的 BCGControlBar 资源 (位图、图标和光标),你将被提示创建一个 "RES" 子目录。这是 Visual Studio 资源编辑器的问题,它没有以正确的方式理解项目设置中的路径。你只要回答 yes 就可以了,然后 L.***\RES 子目录将被创建。当资源文件被编译的时候(包括 静态 和 DLL 模式),正确的 RES 路径将被取回。该语言的资源 DLL 文件将被放在 BIN 目录中(与 BCGCB<ver>.DLL 相同)。.