Q:怎样编写支持多国语言的程序, 让它能够根据所运行的操作系统自动显示相应的文字。 而且不但要替换Windows标准对话框, 还要自动替换窗口标题、 按钮标题等所有显示的文字和所有错误提示。
A:使用Delphi 5的Integrated Translation Environment (ITE)可以轻易得完成这个工作。
我们创建一个示意性的工程MultiLanguage, 在Form上放一个Label和一个Button, 分别把Caption赋值为“English Label” 和“English Button”。
选择菜单Project|anguages|Add ..., Delphi显示Add Languages对话框, 选择Next。
从语言列表中选中“英语(美国)” 和“中文(中国)”, 选择Next。
ITE会根据所选的语言创建子目录,目录名称是语言的缩写,选择Next。
第一次增加语言时, Update Mode固定为Create new, 选择Next。
选择Finish。
Delphi会自动创建支持不同语言的资源动态库。
Delphi还会自动创建一个工程组, 其中包括原有的MultiLanguages.EXE, 还包括新建的两个资源动态库 (MultiLanguages.enu, MultiLanguages.chs)。 保存工程组。
Delphi启动Translation Manager, 左边是需要翻译的语言, 右边是完成百分比。
选择“中文(中国)”|Forms|Unit1, 在右边第15行和20行填写翻译后的中文。 保存并关闭。
打开Project Manager, 编译MultiLanguages.enu和MultiLanguages.chs, Delphi会在相应的子目录生成资源动态库, 但后缀不是DLL而是ENU和CHS。
孙立