yanglilibaobao
最近评论
lifaming15:是DBCP不是DHCP,he~
文章分类
    收藏
      相册
      存档
      软件项目交易
      订阅我的博客
      XML聚合  FeedSky
      订阅到鲜果
      订阅到Google
      订阅到抓虾
      订阅到BlogLines
      订阅到Yahoo
      订阅到GouGou
      订阅到飞鸽
      订阅到Rojo
      订阅到newsgator
      订阅到netvibes

      原创 国际化NetBeans IDE 5.5中的一个GUI窗体收藏

      新一篇: 介绍NetBeans IDE中的Spring Framework | 旧一篇: 使用JPA时jMaki小部件中的动态数据

      国际化NetBeans IDE 5.5中的一个GUI窗体

      http://www.netbeans.org/kb/55/gui-automatic-i18n.html

       

      国际化NetBeans IDE 5.5中的一个GUI窗体

      撰稿人:Jana MaleckovaMarek Grummich

      以下教材将介绍在NetBeans IDE 5.5中将设置国际化的一些基本步骤。我们将对一个窗体设置国际化,随后对这样设置的窗体进行设计,最后对在几个封装中包含数个窗体的整个项目进行国际化。可通过两种方法将设置国际化。本教材的第一部分介绍自动国际化,第二部分使用一个特殊的向导。

      预计持续时间:30分钟

      先决条件

      本教材假设读者具有以下技术的基本知识或编程经验:

      l         NetBeans IDE

      本教材介绍:

      l         国际化的原理

      l         如何安装更新包(Update Pack

      l         如何在Design Time中设置自动国际化

      l         国际化一个完整项目

      l         国际化单个窗体

      l         相关主题

      国际化的原理

      国际化可以使应用程序适应各种语言和地区,不需要技术上的变更或者重新编译。国际化程序可以使诸如状态信息和GUI组件标签等文本元素存储在源代码的外部,并以动态方式将它们找回,而不是在程序中进行编码。

      一般将国际化字符串以键/值对的形式存储在属性文件中。键是程序用来调回文本的标识符,值是实际的文本。为每一个用来翻译程序的场所(或语言)创建一个属性,在每个场所中将是相同的仅字符串不同。

      IDE为进行以下工作提供工具:

      l         在创建GUI窗体或Java程序时插入国际化字符串

      l         使用国际化的字符串替换独立文件或文件组中的所有硬编码字符串

      更新包的安装

      国际化支持是NetBeans IDE 5.5默认安装的一部分,但是如果希望针对某个窗体使用特殊的自动国际化,必须安装Beta更新中心的GUI Builder更新包,这种更新还包含许多GUI Builder的其他功能。http://form.netbeans.org/updates/update55.html上可以找到更多的信息。

      一旦NetBeans IDE 5.5运行起来,请遵照以下步骤进行:

      1.         在主菜单中,选择“工具”>“更新中心”。

      2.         在已知的更新中心表中,点选NetBeans Update Center Beta. (不选其他,以加快连接过程。)

      3.         单击“下一步”。IDE将连接至更新中心,并显示所有可用的更新。

      4.         在“功能”节点内,选择NetBeans 5.5 GUI Builder更新包,并单击“添加”。“包含安装”列表中将出现所有必要的模块。

      5.         单击“下一步”并接受许可。

      6.         下载模块之后,单击“下一步”继续。

      7.         务必选择安装所有模块(带复选框的左列)。

      8.         单击“完成”并重新启动IDE

      IDE重新启动后,安装完成,可以开始使用新功能了。

      手动安装(二中择一)

      也可以手动下载文件,安装更新包。只下载以下链接的文件,然后在“工具” |“更新中心”中选择“安装手动下载的模块”选项。

      l         org-jdesktop-layout.nbm

      l         org-netbeans-modules-i18n.nbm

      l         org-netbeans-modules-form.nbm

      l         org-netbeans-modules-i18n-form.nbm

      l         org-netbeans-modules-properties.nbm

      Design Time中国际化一个GUI窗体

      在本练习中,我们将打开演示Java应用程序项目,该项目包含一个使用GUI Builder创建的有名的发现对话框。下一步,对FindDialog.java窗体进行自动国际化,为了测试国际化了的GUI窗体,我们将向属性文件添加一个新的场所,并在非默认场所运行窗体。

      打开示例项目

      1.         下载InternationlizeDemo.zip 项目,并将其解压在计算机的某个位置上。

      2.         选择“文件”>“打开项目”(Ctrl-Shit-O),选择在上一步中创建的InternationalizeDemo文件夹,然后单击“打开”。

      3.         展开“源封装”>“演示”并双击FindDialog.java。在GUI Builder中打开样本窗体。

       

      要想查看如何创建该GUI窗体的演示,请单击“查看演示”。

      打开自动国际化

      1.         在“检查器窗口”中选择根节点(名为FindDialog窗体)。

       

       

      2.         在“属性”窗口中,选择“自动国际化开”属性复选框。

       

       

      设定复选框时,IDE在“演示”封装中创建Bundle.properties文件,就像在“属性绑定文件”(Properties Bundle File)属性中设置的一样。如果需要将该文件放在不同的位置,可以调用“定制编辑器()”并选择一个位置或者直接在属性的文本字段中直接键入路径。

       

       

      3.         在“项目”窗口中,双击“项目窗口”中的“绑定”(Bundle)节点,或者右键单击节点并选择“编辑”。
      在“源编辑器”中打开属性文件。可以发现,生成了针对FindDialog.java窗体的所有合适的“键”和“值”。(每个键的名称来自窗体名称和组件“变量”名称。)例如,FindDialog.jLabel1.text键是为窗体文件FindDialog中变量名为jLabel1的组件而生成的。本例中,jLabel1值代表组件的“文本”属性。

      国际化独立GUI组件

      我们现在将使用GUI构建器为窗体中JLabelsJbuttons输入国际化字符串。

      1.       在“设计区域”中选择合适的GUI组件(例如:jLabel1)。

      2.       在“属性”窗口中,为“文本”属性单击省略符号()按钮。注意,还可以国际化其他拥有“字符串”值的属性,例如:MnemonicAccessible Name Accessible Descriptor,以及ToolTip

      3.       将属性编辑器切换至资源绑定模式。检查“绑定名称”字段是否设置成demo.Bundle,“键”字段包含字符串FindDialog.jLabel1.text

      4.       在“值”字段中键入Find What:

      5.       单击“确定”。

      针对所有组件重复上述步骤,窗体如下图所示:

       

       

      要查看国际化jLabel1演示,单击“查看演示”

      注意:可以用更简单和更快速的方法执行第1-5步:在设计视窗中双击jLabel1,将文本从jLabel1改成Find What:然后按下“回车”。结果与以上步骤给出的相同。

      添加一个新的场所

      1.       在“检查器窗口”(FindDialog窗体节点)中选择根节点。

      2.       在“属性”窗口中,为“设计场所”属性单击省略符号()按钮。

      3.       在“国家代码”字段中输入ES

      4.       单击“确定”。

      在“绑定属性”节点的下面出现新场所,如下所示:

       

       

      5.       在“项目”窗口中,右键单击Bundle.properties,并选择“打开”。

      6.       将表中相应列中的独立信息翻译成新的语言(例如:西班牙语),如下所示:

       

       

      7.       在“检查器窗口”中右键单击根节点,然后选择“重新装入窗体”(或者按下Ctrl-R)。重新打开窗体,在设计中载入“西班牙语”场所,如下所示:

       

       

      在该“Flash演示中”可见到这些功能的运行(虽然不能与本教材完全相同)。

      测试一个非默认的场所

      1.       在“项目”窗口中,右键单击InternationalizeDemo项目,并选择“属性”。

      2.       在“类别”窗口中,选择“运行”节点。

      3.       在“VM选项”中输入-Duser.language=es -Duser.country=ES

       

       

      4.       单击“确定”。

      5.       右键单击InternationalizeDemo项目,并选择“运行项目”

      IDE在西班牙语场所运行FindDialog对话。

      国际化一个完整项目

      一般情况下,在默认场所中我们拥有几个文件,需要对它们进行修改,以便将它们翻译成其他语言。在这种任务中,“国际化向导”是一种完美的工具,因为它能够一次国际化多个文件。我们将在“GUI窗体”示例项目中展示这一功能,该项目包含在GUI Building Tutorial中创建的窗体。

      创建一个示例项目

      1.       选择“文件”>“新项目”,或者单击IDE工具栏中的“新项目”图标。

      2.       在“类别”窗口中,选择“示例”>“常规”节点,并且在“项目”窗口中选择“GUI窗体示例”。单击“下一步”。

      3.       在“项目名称”字段中输入GUIFormExamples,然后指定项目的位置(例如:/space/projects)。

      4.       务必选择“设置为主项目”复选框。

      5.       单击“完成”。

       

       

      准备属性文件

      1.       选择“文件”>“新项目”,或者单击IDE工具栏中的“新文件”图标。

      2.       在“类别”窗口中,选择“其他”节点,在“文件类型”窗口中选择“属性文件”。单击“下一步”。

      3.       在“文件名称”字段中输入ContactEditor,将src/examples文件夹指定为文件位置。

      4.       单击“完成”。

      IDE创建ContactEditor.properties文件,并在“源编辑器”中打开 ContactEditor(默认语言) 文件。

      重复以上步骤创建另一个Antenna.properties文件。

       

      调用国际化向导

      1.       在“项目”窗口中,右键单击Source Packages节点,并选择“工具”>“国际化”>“国际化向导”。

      2.       为了进行展示,选择Find.java,并单击“取消源”按钮。

      3.       单击“下一步”。

      4.       检查“国际化”向导是否提供了正确的属性文件examples.Antenna examples.ContactEditor。如果不是,使用“选择资源”按钮来选择正确的属性文件。

       

       

       

       

       

       

       

       

       

       

       

       

       


       

      5.       单击“下一步”。

      6.       在“国际化”向导的最后一步显示所有硬编码的字符串,可以确定它们中哪些来自属性文件(使用复选框)。通过为某个字符串单击省略符号()按钮,可以进一步自定义独立的键、值、注释,以及被替换字符串的格式。

       

       

      7.       单击“完成”。

      现在完成了源代码的国际化,另一个场所可以是addedtested ,如上所示。

      国际化单个窗体

      使用I18n功能是国际化一个GUI窗体的最简单方法。但是,如果没有安装更新包,或者还希望国际化不是由“窗体编辑器”生成的代码,使用“国际化”窗口是一种解决办法。(这种功能可用于任何.Java文件,不只是使用“窗体编辑器”创建的文件)下一个例子使用“国际化”窗口,该窗口是默认Netbeans IDE 5.5安装的一个部分。

       

      在这个最后的练习中,我们将重新使用“GUI窗体示例”项目,并国际化Find.java窗体,该窗体不包含在以上的练习中。我们将调用“国际化”对话框,来替换该文件中的所有硬编码字符串。最后,我们将了解如何在编写程序时在源代码中插入一个国际化字符串。

       

      使用国际化对话框

      1.       项目窗口中右键单击Find.java并选择工具>国际化”(Internationalization>国际化”(Internationalize

      IDE显示“国际化”对话框,并预填充来自Find.java源代码的第一个硬编码的字符串。

      2.       单击“浏览”,选择一个特别的属性文件,或者创建一个新的属性文件(例如:Find.properties)。

      3.