Access交流中心

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

修改当前对象颜色

澈丹  发表于:2015-03-31 17:05:24  
复制

各位老师,我想编写一个通用的代码,比如一个模块,在每个对象(文本框)的单击事件中引用,功能是如果这个对象的backcolor是白色,单击会变成红色,如果是红色,单击变成白色。针对一个对象我可以实现,但是如何编写成通用的,请帮助~~~

 

Top
竹笛 发表于:2015-03-31 23:56:19

具体是什么代码我没有,但提示一个努力的方向,学习一下函数和类相关的知识。



煮江品茶 发表于:2015-04-01 08:48:33

sub SetBackcolor(ctrl as control)

    '用法:Call SetBackcolor(me.姓名)

    if ctrl.backcolor=RGB(255,0,0) then ctrl.backcolor=RGB(255,255,255)

    if ctrl.backcolor=RGB(255,255,255) then ctrl.backcolor=RGB(255,0,0)

end sub



澈丹 发表于:2015-04-01 14:55:15
谢谢回复,但是有个问题,control只能是文本框,复选框,按钮的对象,但是用control代替一个矩形,就不行了,什么能够作为矩形的对象


煮江品茶 发表于:2015-04-01 15:19:31

Box也可以的,只是给你的代码有点逻辑问题,修改为如下:

Sub SetBackcolor(ctrl As Control)
    '用法:Call SetBackcolor(me.姓名)
    If ctrl.BackColor = RGB(255, 0, 0) Then
        ctrl.BackColor = RGB(255, 255, 255)
    Else
        ctrl.BackColor = RGB(255, 0, 0)
    End If
End Sub




澈丹 发表于:2015-04-01 15:51:17
谢谢 确实可以 可能是我之前背景颜色是自动,需要改成白色


澈丹 发表于:2015-04-01 15:56:54
文本框和复选框,按钮是可以用Me.ActiveControl传递对象,box貌似不可以

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