【软件多国语言】一个demo
之前上学的时候做过一个东西,需要中英文软件界面,并且需要随时可以切换,当时是师妹来做的,用的最直接也是最笨的办法, 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的更多相关文章
- jqGrid 中文配置 - grid.locale-cn.js 多国语言
中文配置如下:多国语言(demo 内有官方下载连接 ): jqGrid 表格插件中文 grid.locale-cn.js 代码如下: ;(function ($) { /** * jqGrid Eng ...
- 高质量,高效率的多国语言软件开发(Web/PC/Mobile),使用接口约束/调用不同语言资源
偶然间翻出了几年前写的一个小程序,把当时的资料整理整理分享一下. 当时为了给自己的软件实现多国语言功能,而开发的辅助工具:SE String Resource. 这是当时基于自己另一款 IDE 软件抽 ...
- UnifyRemoteManager-多国语言绿色版v1.3-20200315,统一远程连接自动登录软件,欢迎测试
UnifyRemoteManager-多国语言绿色版v1.3-20200315,统一远程连接自动登录软件,欢迎测试 下载参考: 百度网盘:https://pan.baidu.com/s/15g-oXT ...
- 解析大型.NET ERP系统 多国语言实现
实现多国语言有许多种实现方案,无外乎是一种字符串替换技术,将界面控件的文本标签替换成相应语言的文字..NET Windows Forms实现多国语言的方法有以下几种: 1 .NET的方案,使用资源文件 ...
- WinCE6.0多国语言软键盘
N久以前写过一篇<WinCE下自定义的大软键盘>,这个自定义软键盘就是为RM905a+项目来做的.RM905a+的系统分辨率是640*480,WinCE原生键盘小的太小,大的又太大.所以就 ...
- Inno Setup:获取isl中的多国语言字串
原文 http://zwkufo.blog.163.com/blog/static/25882512010101041626803/?suggestedreading&wumii 用InnoS ...
- XP 多国语言包
http://download.microsoft.com/download/f/6/4/f648c363-6975-470c-8202-ac5aea706109/WindowsXP-KB835935 ...
- c#开发之多国语言解决方案gnu.gettext + poedit
1.工具简介 1.1.关于i18n i18n其来源是英文单词 internationalization的首末字符i和n,18为中间的字符数是“国际化”的简称. i10n为资源本地化,全称为Locali ...
- 译文 [ROM][多国语言][2015.06.11] Lenovo S750 (MTK6589) - andrea_d86-lenovos750-4.2.2
************************************************** andrea_d86-lenovos750-4.2.2-150530 ************** ...
随机推荐
- floodlight StaticFlowPusher 基于网段写flow,通配
flow1 = { "switch":"00:00:00:00:00:00:00:03", "name":"flow-mod-1& ...
- QAQ数论模板笔记√
#include <cstdio> using namespace std; long long gcd(long long a, long long b) { // (a, b) ret ...
- ASP.NET并发处理
http://blog.csdn.net/hliq5399/article/details/6280288
- 编写自己的TRACE函数
TRACE函数是MFC里面的一个宏,是对OutputDebugString的封装. OutputDebugString的作用是输出调试信息,不要以为这个函数只有在Debug版本才会打日志,即使是Rel ...
- 源代码Log
MVC5源代码 https://github.com/aspnet/Mvc MVC4源代码 http://aspnetwebstack.codeplex.com/
- 【原创】中文分词系统 ICTCLAS2015 的JAVA封装和多线程执行(附代码)
本文针对的问题是 ICTCLAS2015 的多线程分词,为了实现多线程做了简单的JAVA封装.如果有需要可以自行进一步封装其它接口. 首先ICTCLAS2015的传送门(http://ictclas. ...
- STL容器的效率比较
1.介绍 顺序存储容器 : string.vector.list.deque 关联存储容器:map底层采用的是树型结构,多数使用平衡二叉树实现,查找某一值是常数时间,遍历起来效果也不错, 只是每次插入 ...
- jumplist和changlist
用jumplist可以在不同的访问过的位置之间跳转 C-O到上一个 C-I到下一个位置 :jumps列出跳转列表 changlist列出最近的改动点 g;到上一个,g,到下一个 :changes列出相 ...
- 用代码编辑数据库T-SQL语句
1.创建表 create table Car( Code varchar(50) primary key, Name varchar(50), Time date, Price float, Bran ...
- Git for windows 中文乱码解决方案
1.git status时显示乱码,如下: \316\304\261\276\316\304\265\265.txt 解决方案: $ git config --global core.quotepat ...