现在的位置: 首页 > 综合 > 正文

从TextBox的升级看VB6与VB2010的不同~

2012年10月04日 ⁄ 综合 ⁄ 共 1931字 ⁄ 字号 评论关闭

从VB6升级到VB2010,很多人不习惯。。。说不习惯,其实也有很大一个原因:就是不知道VB2010好在哪里。。那么,本文将以最常用的TextBox的升级为例让你领略一下VB2010的魅力...

1. 清除文本框内容。
VB6 : TextBox1.Text=""
VB2010: TextBox1.Clear()

2. 取消选择文本。
VB6 : TextBox1.SelLength=0
VB2010: TextBox1.DeselectAll()

3.隐藏文本框。
VB6 : TextBox1.Visible = False
VB2010: TextBox1.Hide()

4.显示文本框。
VB6 : TextBox1.Visible = True
VB2010: TextBox1.Show()

看这里,你会发现同样的功能,在VB6中很多对属性值的操作,而到VB2010中则演变为方法。或者,你觉得其实是一模一样是吧。。那么,继续看:

6.取得文本框文本的长度。
VB6 : TextLen=Len(TextBox1.Text)
VB2010: TextLen=TextBox1.TextLength

7.向当前文本框添加文本。
VB6 : TextBox1.Text=TextBox1.Text & "123"
VB2010: TextBox1.AppendText("123")

看到这里,是不是觉得VB2010也不过是对一些函数、方法的整合是吧。。怎么,不屑?那再来看几个:

8. 选中文本框中指定位置指定长度的字符串。
VB6 : TextBox1.SelStart=2
TextBox1.SelLength=3

VB2010: TextBox1.Select(2, 3)

9.选中文本框中所有的内容。
VB6: TextBox1.SelStart=0
TextBox1.SelLength=Len(TextBox1.Text)

VB2010: TextBox1.SelectAll()

我知道,你还不服气。。。因为还是整合。。,但不管怎么说,效率上,确实高了不少。。不过,这并不是全部,费话少说。。。还是go on...

10. 将文本框的内容复制到剪贴板。
VB6 : Clipboard.SetText(TextBox1.Text)
VB2010: TextBox1.Copy()

11. 将剪贴板中的内容贴到选中的文本或文本框中。
VB6 : TextBox1.Text=Clipboard.GetText()
VB2010: TextBox1.Paste()

12. 将文本框的内容移动到剪贴板
VB6 : Clipboard.SetText(TextBox1.Text)
TextBox1.Text=""

VB2010: TextBox1.Cut()

看到这里,大家应该注意到VB2010进行copy/paste操作竟然不用去理会Clipboard。。别激动。。请继续:

13. 设置文本框的内容是否为只读。

VB2010: TextBox1.ReadOnly = True

14. 设置文本框输入的字符是保持不变还是转成大写/小写。(例:转成大写)

VB2010: TextBox1.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper

这2个,我特地没有写出VB6的代码。。有兴趣的,不妨用写写看哦。。不过,我想有经验的看客们大概也可以估计的出来实现这2个属性需要多少代码。。

此时有人不得不心里承认:这2个属性确实很有用,而且VB6确实没有。。实现起来,还有点麻烦!

也许,列出的这14个小例子。。。看起来无非是节省了代码。但实际上,不论是对属性值的操作改变成方法,或是将一些函数与方法进行整合,真正的意义是:让程序员们更多想思考要做什么,而不用去考虑如何做。

例如:TextBox1.Text="" 其目的是清空TextBox, 而代码完完整整地表现出来实现的方法,即将TextBox1的Text值设置为"" ,其重在如何实现。而升级到VB2010的TextBox1.Clear 则是完完全全没有表现如何实现,只是表达要做什么。。

再例如:VB2010中进行copy/paste/cut这此操作。。直接去调用对应的方法。已经完全忽略了Clipboard的操作。。对程序员的操作系统知识要求大大降低。。其目的一样,要求程序员更多去思考要做什么。。而不是怎么做,如何做。。

所以,这一切。。这不仅仅是省掉的几个字符,更是编程思想的跳跃!

当然,万事有一利必有一弊。如此同时不得不说的是:如果只依赖于先进的编程工具。未来的程序员会越来越不了解程序,操作系统的本身,更不用说象早期汇编程序员那样了解到pc的硬件以及架构。

那么,VB2010,.NET对程序员究竟是福或是祸呢?:)

 

抱歉!评论已关闭.