Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

动态表示窗体中某一控件

巴士岁月  发表于:2010-09-02 15:43:32  
复制

大家好,我想请教一下,窗体中的控件能不能动态表达,如:me![L2],表示某一文本框的值,能不能用某一变量替代L2,可以的话举个例子谢谢

 

Top
jia 发表于:2010-09-03 08:55:02

不明白你说的意思。

 



红尘如烟 发表于:2010-09-03 15:04:40

当然可以,用 Me(变量名)

引用窗体中的对象常用的有两种方法:
方法一:Forms!窗体名!控件名.属性名
方法二:Forms(窗体名变量)(控件名).属性名

如果是引用子窗体中的控件则是:
方法一:Forms!窗体名!子窗体控件名!控件名.属性名
方法二:Forms(窗体名变量)(子窗体控件名变量)(控件名变量).属性名

使用方法一是最高效的,但如果名称中有空格等非法字符,需要使用方括号将名称括起来,如:
Forms![窗体名]![控件名].属性名

 



煮江品茶 发表于:2010-09-03 16:01:58

大体可分为两种情况来处理:
其一是控件名称没有什么规律,但是知道一个确定的范围。这是可以遍历时将控件设为一个变量。例如,逐个显示连续子窗体主节各控件的名称:

 

dim ctls as controls
dim ctl as control
set ctls=me.子窗体.form.Section(acHeader).Controls
for each ctl in ctls
 msgbox ctl.name
next ctl

 

其二是人为将某一组控件按一定规律命名,这样就可以通过命名的规律对控件对象进行操作了。例如我们要将给主窗体上的10文本框控件赋值其自己的名称,我们可以先将这是个文本框控件分别命名为t1,t2...t10。


dim ctls as controls
dim ctl as control
dim i as long
set ctls=me.form.Controls
for i=1 to 10
 ctls("t" & i).value=ctls("t" & i).name
next



巴士岁月 发表于:2010-11-19 15:17:52

这段时间忙得没顾上这个,不好意思



总记录:4篇  页次:1/1 9 1 :