首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

自定义控件中怎么改变其他控件的值

2012-08-27 
自定义控件中如何改变其他控件的值在画面上,有一个文本框(PW)还有一个自定义的数字小键盘如果按下 数字键

自定义控件中如何改变其他控件的值
在画面上,有一个文本框(PW)
还有一个自定义的数字小键盘

如果按下 数字键后,文本框改变(类似触摸屏输入密码)

为何在自定义控件中找不到parent这个属性?

[解决办法]
给分不?
[解决办法]
貌似没人会
[解决办法]
那也得等会的人有时间
[解决办法]
你的文本框式textbox控件不是?
你说的"类似触摸屏输入密码",这个数字界面是键盘,还是你在屏幕上显示了一个窗体,上面是10个按钮?

Me.Parent.Controls

如果me是控件,那么me.parent就是控件的容器,一般是窗体.窗体的controls是一个集合,你也用msgbox me.parent.controls也没有指定是集合的哪一个元素,也没有指定集合的属性,系统不知道你要什么.

如果你是显示了一个窗体,上面10个数字按钮,那么按这些按钮的时候你修改textbox的text属性就够了.比如:
在form1上一个textbox输入密码,名字是PW,PW得到焦点后显示模式窗体(位置调整为PW的附近),名字EnterPW.EnterPW上面10个按钮式0-9,任意点击一个按钮CommandButton(最好是个控件数组了)都执行:
form1.PW.text=form1.PW.text & Index'Index是CommandButton的Index
[解决办法]

使用UserControl.ParentControls(或UserControl.Parent.Controls,当父容器是窗体时),而不是me.parent.controls
示例:

VB code
Dim obj As ObjectFor Each obj In UserControl.ParentControls    Debug.Print obj.Name, TypeName(obj)Next 

热点排行