Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 25538|回复: 72

[分享] 当控件成为焦点时变色(类模块)

[复制链接]
发表于 2008-8-23 17:43 | 显示全部楼层 |阅读模式
本帖最后由 爱疯 于 2012-7-11 16:39 编辑

现有一个用户窗体userform1,窗体上有textbox1,textbox2.....textbox9等9个控件,

想实现当某textbox成为当前焦点时它的底色便改变,失去焦点后又恢复正常.

原贴地址:http://www.excelpx.com/forum.php?mod=viewthread&tid=67861

 

首先感谢会员:[不看不看]的帮忙 ,让我初步了解了类模块的应用!

在这个基础上,我把功能给完善了!

当鼠标点击触发控件为焦点时:          焦点控件变为(粉红色)

当在焦点控件录入数据时:                 焦点控件变为(黄色)

当按下回车键焦点转到另一个控件时:焦点控件变为(绿色)

 

还有一个问题就是:窗体在初始化时,无法实现,焦点控件变色

希望各路高手指点一下!

 

232jDBt4.rar (14.01 KB, 下载次数: 204)

[分享]当控件成为焦点时变色(类模块)

[分享]当控件成为焦点时变色(类模块)
发表于 2008-8-23 17:54 | 显示全部楼层
回复

使用道具 举报

发表于 2008-8-23 18:56 | 显示全部楼层
回复

使用道具 举报

发表于 2008-8-23 19:04 | 显示全部楼层

多谢楼主,学习一下.
回复

使用道具 举报

发表于 2008-8-23 19:07 | 显示全部楼层

谢谢分享!

回复

使用道具 举报

发表于 2008-8-23 19:20 | 显示全部楼层

两个事件配合,不错[em17]

回复

使用道具 举报

发表于 2008-8-23 19:27 | 显示全部楼层

补充

KeyDown按下按键事件

KeyUp松开按键事件

回复

使用道具 举报

发表于 2008-8-23 19:33 | 显示全部楼层

QUOTE:
以下是引用mxg825在2008-8-23 17:43:00的发言:

 

还有一个问题就是:窗体在初始化时,无法实现,焦点控件变色

 


 


加上这个

Private Sub UserForm_Activate()
ActiveControl.BackColor = RGB(255, 0, 255)
End Sub

回复

使用道具 举报

发表于 2008-8-23 19:58 | 显示全部楼层

谢谢分享!
回复

使用道具 举报

发表于 2008-8-23 20:11 | 显示全部楼层

Private Sub UserForm_Initialize()
    For i = 1 To 9
        Set newclass(i) = New 类1  '创建一个新类对象
        Set newclass(i).che = Controls("TextBox" & i)  '设置新类和textbox(i)控件创建关键
        newclass(i).che.BackColor = &H80000005 '白色
        Set newclass(i).frm = Me     '类窗体也和当前窗体建立关联
    Next
End Sub

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-3-29 03:56 , Processed in 0.407610 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表