您的位置:程序门 -> .net技术 -> vb.net



两行代码不知道如何理解


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


两行代码不知道如何理解[已结贴,结贴人:kof1000]
发表于:2007-12-30 01:16:20 楼主
form1里的控件有:menustrip,textbox1,textbox2
主菜单:编辑
编辑里的菜单项:复制,粘贴

菜单项 "复制 "的click事件里的代码:
dim   objtextbox   as   textbox   =   me.activecontrol
objtextbox.copy()

菜单项 "粘贴 "的click事件里的代码:
dim   objtextbox   as   textbox   =   me.activecontrol
objtextbox.paste()

功能:利用 "复制 "菜单复制textbox1里的文本,然后再利用 "粘贴 "菜单把复制的内容
粘贴到textbox2里

疑问1:为什么要定义一个textbox对象   objtextbox呢
疑问2:如何理解dim   objtextbox   as   textbox   =   me.activecontrol   这行代码

发表于:2007-12-30 05:38:481楼 得分:20
1、使用textbox对象,是为了使用   copy和paste   方法,   这2个方式   textbox控件   类上的。
2、me.activecontrol       是返回当前窗体(容器)中的活动控件,即有焦点的控件
比如,在这个例子中,我们会先选中textbox中的文本,然后在复制,当光标进入textbox控件之后,控件就变成   当前控件,即是me.activecontrol       所引用的
由于这个属性的返回类型是control,   是一个基类,   如果直接调用的话,是没有copy和paste方法。所以需要转换一下

——————————
恩,这个算是有隐式类型转换吧,(基类和子类)

但这个转换也是脆弱的,如果当前活动的控件不是textbox,就会抛出异常。


快速检索

最新资讯
热门点击