设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 23778|回复: 72
打印 上一主题 下一主题

[宏/菜单/工具栏] [分享][原创]组合框的又一用法

[复制链接]
跳转到指定楼层
1#
发表于 2005-7-28 02:26:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
新尝试的一个用法,可以快速录入数据,不知道有没有已经在用了!



rivate Sub Combo0_GotFocus()

  Me.Combo0.ColumnWidths = "1.2厘米;2.544厘米"   '显示第一列

  Me.Combo0.Dropdown                                           '展开列表

End Sub

rivate Sub Combo0_LostFocus()

  Me.Combo0.ColumnWidths = "0厘米;2.544厘米"      '隐藏第一列,使组合框显示为第二列的内容

End Sub

游客,如果您要查看本帖隐藏内容请回复




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-7-28 03:16:00 | 只看该作者
好贴,收藏。

点击这里给我发消息

3#
发表于 2005-7-28 05:26:00 | 只看该作者
不错,原来都想到一块儿了,我以前也作做尝试, 思路一样,只是写成模块, 调用相对简单一些,但方法一样. 见猎心喜,也放上来. 只因是公司软件产品, 不便分享其它源码了.(原理完全一样)



设置自动编码与名称切换只换在组合框的标记属性中设置为(autocbo23) 即可, 如果只有两列则为autocbo12



不过,相对宿命的风的方法,增加一个判断,就是如果窗体是不可编辑的,则不显示编码,而只显示中文.





关键代码:

Public Function gt_SetCboEnterEvent(Optional rctrComboBox As Control, Optional rintType As Integer = 0, Optional rstrTemp As String)

Dim blnCancel As Boolean

Dim frm As Form

On Error Resume Next

If TypeOf rctrComboBox.Parent Is Form Then

    Set frm = rctrComboBox.Parent

Else

   If TypeOf rctrComboBox.Parent.Parent Is Form Then

    Set frm = rctrComboBox.Parent.Parent

   Else

        If TypeOf rctrComboBox.Parent.Parent.Parent Is Form Then

         Set frm = rctrComboBox.Parent.Parent.Parent

        Else

            Exit Function

        End If

   

   End If

End If

If frm Is Nothing Then Exit Function

If Nz(rctrComboBox.ControlSource) <> "" Then

If frm.AllowEdits = False Or rctrComboBox.Enabled = False Or rctrComboBox.Locked = True Then

    blnCancel = True

End If

Else

If rctrComboBox.Enabled = False Or rctrComboBox.Locked = True Then

    blnCancel = True

End If

End If

If blnCancel Then Exit Function

    If InStr(rctrComboBox.Tag, "autocbo") > 0 Then

       gt_SetComboColumnWidth rctrComboBox, rstrTemp

    End If

   

      Select Case rintType

       Case 2

        gt_ComboAutoExpand rctrComboBox, True

       Case 1

        gt_ComboAutoExpand rctrComboBox, False

       Case 0

      

      End Select

End Function



Public Function gt_SetCboExitEvent(Optional rctrComboBox As Control, Optional rintType As Integer = 0, Optional rstrTemp As String)

Dim blnCancel As Boolean

Dim frm As Form

On Error Resume Next

If TypeOf rctrComboBox.Parent Is Form Then

    Set frm = rctrComboBox.Parent

Else

   If TypeOf rctrComboBox.Parent.Parent Is Form Then

    Set frm = rctrComboBox.Parent.Parent

   Else

        If TypeOf rctrComboBox.Parent.Parent.Parent Is Form Then

         Set frm = rctrComboBox.Parent.Parent.Parent

        Else

            Exit Function

        End If

   

   End If

End If

If frm Is Nothing Then Exit Function

If Nz(rctrComboBox.ControlSource) <> "" Then

If frm.AllowEdits = False Or rctrComboBox.Enabled = False Or rctrComboBox.Locked = True Then

    blnCancel = True

End If

Else

If rctrComboBox.Enabled = False Or rctrComboBox.Locked = True Then

    blnCancel = True

End If

End If

If blnCancel Then Exit Function

    If InStr(rctrComboBox.Tag, "autocbo") > 0 Then

       gt_SetComboColumnWidth rctrComboBox, rstrTemp

    End If

End Function





效果图:



获得焦点变成编码,可选择编码,失去焦点变成中文















[此贴子已经被作者于2005-7-27 21:32:29编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
4#
 楼主| 发表于 2005-7-28 20:16:00 | 只看该作者
今天算长了见识了。.....谢谢站长的指教!
5#
发表于 2006-3-20 11:05:00 | 只看该作者
好!非常谢谢!顺便问问,查询拼音首字的方法可否做到从任何位置开始?这样可以避免漏查。
6#
发表于 2006-3-20 22:47:00 | 只看该作者
来学习学习
7#
发表于 2006-3-21 00:53:00 | 只看该作者
收藏起来!
8#
发表于 2006-3-24 21:03:00 | 只看该作者
1231321321321321321321321321321321
9#
发表于 2006-3-24 21:03:00 | 只看该作者
dfdasfdsfdsfadsafdsfdsaaaaaadsf
10#
发表于 2006-3-24 21:03:00 | 只看该作者
dfffdfdsfsadfffffffffffffffffffffffffffffffffffffffffffffffffffffff
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-25 08:28 , Processed in 0.104410 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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