之前上学的时候做过一个东西,需要中英文软件界面,并且需要随时可以切换,当时是师妹来做的,用的最直接也是最笨的办法, what?

if(中文)

{

button1.Text = "花姑娘";

}

else

{

  button1.Text = "flower girl";

}

网上的解决方案一般是用资源DLL,即写一个控制台项目--DLL,在里面添加stringTable资源,做中英文两个DLL,其中的IDS_XX是相同的,每个IDS_XX对应一个词的中英文版,

例如英文版的IDS_BTN_PLAY-----101-----“PLAY”,

中文版的IDS_BTN_PLAY-----101-----"播放",

依此类推

用的时候用一个标记来表示当前的语言,然后如下:

 //英文
if(TRUE != m_bIsEnglish)
{
if(m_hLanguage != NULL)
{
FreeLibrary(m_hLanguage);
} m_hLanguage = LoadLibrary(_T("English.dll")); const int MAX = ;
LPTSTR lpBuffer = new TCHAR[MAX];
ZeroMemory(lpBuffer, MAX * sizeof(TCHAR)); LoadString(m_hLanguage, IDS_BTN_PLAY, lpBuffer, MAX);
        //使用时需要按照DLL资源定义该IDS_XX
   SetDlgItemText(IDC_BTN_PLAY, lpBuffer);   m_bIsEnglish = TRUE;    delete[] lpBuffer;   lpBuffer = NULL;   }

如果是中文则类似,不再赘述。

【软件多国语言】一个demo的更多相关文章

  1. jqGrid 中文配置 - grid.locale-cn.js 多国语言

    中文配置如下:多国语言(demo 内有官方下载连接 ): jqGrid 表格插件中文 grid.locale-cn.js 代码如下: ;(function ($) { /** * jqGrid Eng ...

  2. 高质量,高效率的多国语言软件开发(Web/PC/Mobile),使用接口约束/调用不同语言资源

    偶然间翻出了几年前写的一个小程序,把当时的资料整理整理分享一下. 当时为了给自己的软件实现多国语言功能,而开发的辅助工具:SE String Resource. 这是当时基于自己另一款 IDE 软件抽 ...

  3. UnifyRemoteManager-多国语言绿色版v1.3-20200315,统一远程连接自动登录软件,欢迎测试

    UnifyRemoteManager-多国语言绿色版v1.3-20200315,统一远程连接自动登录软件,欢迎测试 下载参考: 百度网盘:https://pan.baidu.com/s/15g-oXT ...

  4. 解析大型.NET ERP系统 多国语言实现

    实现多国语言有许多种实现方案,无外乎是一种字符串替换技术,将界面控件的文本标签替换成相应语言的文字..NET Windows Forms实现多国语言的方法有以下几种: 1 .NET的方案,使用资源文件 ...

  5. WinCE6.0多国语言软键盘

    N久以前写过一篇<WinCE下自定义的大软键盘>,这个自定义软键盘就是为RM905a+项目来做的.RM905a+的系统分辨率是640*480,WinCE原生键盘小的太小,大的又太大.所以就 ...

  6. Inno Setup:获取isl中的多国语言字串

    原文 http://zwkufo.blog.163.com/blog/static/25882512010101041626803/?suggestedreading&wumii 用InnoS ...

  7. XP 多国语言包

    http://download.microsoft.com/download/f/6/4/f648c363-6975-470c-8202-ac5aea706109/WindowsXP-KB835935 ...

  8. c#开发之多国语言解决方案gnu.gettext + poedit

    1.工具简介 1.1.关于i18n i18n其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数是“国际化”的简称. i10n为资源本地化,全称为Locali ...

  9. 译文 [ROM][多国语言][2015.06.11] Lenovo S750 (MTK6589) - andrea_d86-lenovos750-4.2.2

    ************************************************** andrea_d86-lenovos750-4.2.2-150530 ************** ...

随机推荐

  1. 套题T3

    秋实大哥与线段树 Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit  ...

  2. Unigui有用的网址

    http://www.cnblogs.com/ChinaEHR/tag/Delphi/

  3. arcengine C# 读写lyr(转)

    写lyr { IFeatureLayer LineLayer = axMapControl1.get_Layer(0) as IFeatureLayer;            ILayerFile ...

  4. svn:...target\classes\META-INF\MANIFEST.MF (系统找不到指定的路径。)

    在上传项目到svn时,pom.xml报错

  5. linux下,如何把整个文件夹上传到服务器(另一台linux)

    1.Linux下目录复制:本机->远程服务器 scp  -r /home/shaoxiaohu/test1  zhidao@192.168.0.1:/home/test2 #test1为源目录, ...

  6. [原创]使用命令行工具提升cocos2d-x开发效率(一)之TexturePacker篇

    TexturePacker是一个常用的制作sprite sheet的工具,它提供了很多实用的功能. 一般我们制作sprite sheet都是使用他的gui版本,纯手工操作,就像下面这张图示的一样. 刚 ...

  7. MemSQL start[c]up Round 2 - online version(DP)

    只有小写字母 那>=2600的直接找单字母串长度大于等于100的就可以了 <2600 的dp找最长回文串 #include <iostream> #include<cst ...

  8. Eclipse中设置在创建新类时自动生成注释

    方法一:Eclipse中设置在创建新类时自动生成注释 windows-->preference Java-->Code Style-->Code Templates code--&g ...

  9. centos的版本和内核查看

    查看linu的内核信息 查看distrubution,centos属于哪个release

  10. HighCharts 饼图

    @{ ViewBag.Title = "Index"; Layout = "~/Views/Shared/_Layout.cshtml"; } @section ...