频 道 直 达 - 新闻 - 读书 - 培训 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

浅析VisualBasic.NET中的资源使用(1)

作者: 出处:天极网  (  ) 砖  (  ) 好  评论 ( ) 条  进入论坛
更新时间:2006-12-07 23:04
关 键 词:.NET  VB  资源
阅读提示:直到现在,资源在提示信息分离出来,成为一个资源文件而独立存在,在程序进行编译时再由编译器链接到可执行文件中。以下以VB.net的一个小例子说明资源的存在。

在我了解到的程序世界中,资源的初次登场是因为程序的国际化,当时的可执行文件已不再是单调的英文面孔,汉语、西班牙语等国际语言的支持强烈要求同样的程序,可以使用不同的语言界面。在当时,将程序逻辑代码和提示信息分离是一个不错的主意,提示信息分离出来成为一个资源文件而独立存在,在程序进行编译时再由编译器链接到可执行文件中。直到现在,资源在这个方面依然扮演着重要的角色。以下以VB.net的一个小例子说明资源的存在:

例一:时下许多网上的软件都有什么多国语言版之类的说法,实在点就是同一程序在安装或使用过程中有个国家区域选项,当你选择了对应的国家时,程序就会显示使用相应国家语言的界面。其实在编程实现这种功能非常简单,只不过是使程序同时嵌入几个不同语言的资源文件而已,以下示例就是一个同时支持英文和中文界面的示例程序。程序创建完整步骤如下:

1、在VB.net中新建一个项目,类型选择windows应用程序,项目名称改为resourcesample1。
2、在form1上放一个Lable控件。
3、选择窗体form1,按以下指示设置属性:

(1)Locallizable 属性设为True,这一步是关键,这个属性告诉net环境,要使用资源文件来保存窗体及窗体内的各种控件的属性值。

(2)选择窗体的language属性,将其设为英语。然后按下表设置窗体及lable控件的其它属性:

控件名称 属性 属性值
Form1 text Form
Label Text Let's speak English!

窗体外观如下:

(3)重新选择窗体的language属性,将其设为中文(简体)。然后按下表设置窗体及lable控件的其它属性:

控件名称 属性 属性值
Form1 text 窗体
Label Text  

让我们说中文!

窗体外观如下:

大家也许很奇怪,为什么要对窗体及label的text属性进行两次不同的赋值呢?其实答案很简单,vs.net太聪明了,由于我们使用Locallizable 属性告诉net环境,要使用资源文件来保存窗体及窗体内的各种控件的属性值,当使用不同的language属性,它会将窗体及其上控件的属性按语言分别记录在不同的资源文件内。不信你将language属性重新设为英语看看,第一个英文界面的窗体又跳出来了吧8-D

4、如果说可视化编程是光明之途的话,那么我们的快乐时光到此结束,由于net还没有智能化到会判断什么时候使用什么国家的语言界面的程度(如果net 太智能了,程序员就不幸了,下岗啊,谁受得了?!),所以以下必须由我们自己编写代码确定程序的实际界面显示。

打开 form1的New过程,在InitializeComponent()前加入如下代码(这段代码作用是在窗体初始化组件之前,按指定的语言区域信息载入相应的界面资源文件):

Dim tenmDialogResult As DialogResult
tenmDialogResult = MessageBox.Show("请问是使用中文还是英语,

中文选择OK,英文选择CANCEL。", _ "语言选择", _
MessageBoxButtons.OKCancel, _
MessageBoxIcon.Question, _
MessageBoxDefaultButton.Button1, _
MessageBoxOptions.DefaultDesktopOnly) 

REM 一般情况下程序都是使用读取初始化文件的方法来取得语言设置信息,但本例程为了简便起见,仅使用一个对话框提示用户选择适合自己的语言。

If tenmDialogResult = DialogResult.OK Then '使用中文界面
gstrAppCulture = "zh-CHS"
Else '使用英文界面
gstrAppCulture = "en"
End If

'将需要使用的区域信息放到当前线程的区域信息中,
'程序窗体会根据设定的信息装载相应的资源文件以显示信息
System.Threading.Thread.CurrentThread.CurrentUICulture = _
New System.Globalization.CultureInfo(gstrAppCulture)

剩下的事这没什么好说的了,按运行吧,在出现对话框时试着点OK或Cancel看看你的杰作吧,很酷的同时支持中英文界面的示例程序哦!


共3页: 1 [2] [3] 下一页
【内容导航】
发表
查看
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Java基础教程 (查看52473次)
·UML类图详解 (查看46951次)
·Java编程开发手册 (查看25172次)
·UML统一建模语言 (查看24155次)
·C#技术开发指南 (查看22515次)
·Java编程开发手册 (1195个砖)
·Java基础教程 (429个砖)
·C#技术开发指南 (304个砖)
·PB开发教程 (220个砖)
·.NET开发手册 (217个砖)
·Java编程开发手册 (653个好)
·Java基础教程 (569个好)
·.NET开发手册 (251个好)
·PB开发教程 (209个好)
·Delphi开发技术手册 (174个好)
订阅技术快讯
电子杂志下载
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
名称:Vista精品应用黄皮书
简介:《Vista精品应用黄皮书》囊括了Vista的各方面内容。此次的精简版,是将里面的内容做了提取,便于用户下载和使用。内容包含了各种Vista的安装与实施、技巧与解析以及各种Vista相关学习文档和相关软件的安全下载。该电子书是了解和应用Vista人员必备的工具手册,并且也是第一本
名称:2006中国IT论坛精品集合
简介:本书由“51CTO论坛推广联盟”制作完成。书中所有内容均来自各联盟成员的论坛(网站)。制作本书的目的是为了集中大家的优势资源,将更多更精彩的内容带给广大技术爱好者。本书是联盟成立以来制作的第一本书。
关键字阅读
频道精选
主编信箱 热线:010-66476606 告诉我们您想看的:专题 文章
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 意见反馈 | 网站地图
Copyright©2005-2007 51CTO.COM 版权所有