Office中国论坛/Access中国论坛

标题: [原创]一个方便输入的辅助录入窗体 [打印本页]

作者: Trynew    时间: 2005-6-18 06:43
标题: [原创]一个方便输入的辅助录入窗体
(新修改版)

修改功能:

1、在文本框的标志属性中输入“NoPop”限制辅助窗体使用,输入表明或查询语句可自定义辅助窗体选择项(不做自动筛选)。

2、增加助记码功能,可根据字符串左边6位拼音首字母自动生成助记码,也可自己再修改,在文本框中输入字符串或助记符,均可筛选,返回选定的字符串。

3、弹出的辅助录入窗体设为无边框,可直接用回车或鼠标选定输入的字符串。按Esc键或选定字符串可以隐藏辅助录入窗体。

---------------------------------------

'在文本框中输入空格可显示全部选项,可自动记录已输入内容

'使用方法

'把modEntryStr模块、EntrySelect窗体、tblEntry表 导入到你的数据库,

'在需要辅助输入框的窗体的事件中的键预览设为是,

'并在窗体的“键释放(Form_KeyUp)”事件中加入语句:

'  ShowInputForm KeyCode

'增加 Tmtony 的modDock模块,定位弹出窗体的显示位置,不过必须是子窗体位置才正确

'在文本框的标志属性加字符串则不弹出辅助录入窗体

-----------------

在输入数据的时候,光标放在要输入的那个格子里,输入空格就弹出一个表来,表中反映的是要输入的所有内容.我输入前面几个字符,自动对表进行筛选.很快就能把要输入的内容找到,并选取后输入.并能添加最新内容。

最近看到好几个贴子问到上面要求,现做了一个示例,希望大家试用一下,提点意见。我下一步增加控制弹出窗口的位置的功能。





[此贴子已经被作者于2005-6-18 19:43:28编辑过]

作者: eyewitnes    时间: 2005-6-18 07:33
建议,将弹出的窗口做成treeview,窗体页脚用TOOLBAR建立修改,确定,取消功能,哇哈哈,整个速达的样子
作者: tmtony    时间: 2005-6-18 08:42
非常好的功能, 的确很有创意.



如何定位窗体的功能,我以前倒做过,或许对你能有些帮助.



Option Compare Database

Option ExplicitPublic Declare Function BringWindowToTop Lib "user32" (ByVal hwnd As Long) As LongPrivate Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long

Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long

Private Declare Function GetDeviceCaps Lib "gdi32" (ByVal hDC As Long, ByVal nIndex As Long) As Long

Private Declare Function GetFocus Lib "user32" () As Long

Private Declare Function GetQueueStatus Lib "user32" (ByVal fuFlags As Long) As Long

Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long

Private Declare Function GetTickCount Lib "KERNEL32" () As Long

Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long

Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long

Private Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hDC As Long) As Long

Private Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal Y As Long) As Long

Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As LongPrivate Const GWL_STYLE = (-16)

Private Const QS_MOUSEBUTTON = &H4

Private Const QS_MOUSEMOVE = &H2

Private Const SM_CXBORDER = 5

Private Const SM_CXSCREEN = 0

Private Const SM_CYBORDER = 6

Private Const SM_CYSCREEN = 1

Private Const SWP_NOZORDER = &H4

Private Const WS_SYSMENU = &H80000

Private Const LOGPIXELSY = 90

Private Const LOGPIXELSX = 88Private Const DefaultCrementInterval As Single = 0.5Private Type POINTAPI

    X As Long

    Y As Long

End TypePrivate Type RECT

    Left As Long

    Top As Long

    Right As Long

    Bottom As Long

End TypePrivate Type Dimensions

    Width As Long

    Height As Long

End TypeDim mCallingControl As Control

Dim mCallingForm As Form

Dim mCrementInterval As Double

Dim mCrementIntervalPropertyName As String

Dim mCurrentControl As ControlDim mDtmDate As Date

Dim mMaxBottom As Single

Dim mMinTop As Single

Dim mMoveSpeedControl As Boolean

Dim mPixelsPerTwipHorizontalFactor As Single

Dim mPixelsPerTwipVerticalFactor As Single

Dim mPreviousControl As Control

Dim mPreviousLabel As Control

Dim mUndoDate As Date'===============================================================================

'-函数名称:         FormPlacement

'-功能描述:         根据主窗体位置自动停靠子窗体的位置

'-输入参数说明:     参数1:rctr Control 控件

'                   参数2:rfrm Form 窗体

'                   参数3:rintType Integer 停靠类型

'-返回参数说明:     无

'-使用语法示例:     FormPlacement txtCust,me,3

'-参考:

'-使用注意:         rctr 应获得焦点

'-兼容性:           97,2000,XP,2003 compatible

'-作者:             王宇虹

'-更新日期:        2003-06-23

'===============================================================================Public Sub FormPlacement(ByRef rctr As Control, rfrm As Form, Optional rintType As Integer = 0)

    Dim ctlRect As RECT

    Dim frmDimensions As Dimensions

    Dim frmRect As RECT

    Dim scrDimensions As Dimensions    ctlRect = ControlRect(rctr)

    frmDimensions = FormDimensions(rfrm)

    scrDimensions.Width = GetSystemMetrics(SM_CXSCREEN)

    scrDimensions.Height = GetSystemMetrics(SM_CYSCREEN)

    If Nz(rintType, 0) = 0 Then

        rintType = DLookup("FShowType", "tblShowType")

    End If

    '取系统设置的默认模式,如果没有,则默认为0

    Select Case rintType

    Case 1    '水平居中,垂直居中

        If (scrDimensions.Width - frmDimensions.Width) > 0 Then

            frmRect.Left = (scrDimensions.Width - frmDimensions.W
作者: lzx-shmily    时间: 2005-6-18 19:51
非常好用!謝謝分享!
作者: lzx-shmily    时间: 2005-6-18 20:00
但是這樣子窗体中每個文本框一輸入都會彈出列表框,怎樣在不需要輔助輸入的文本框中禁止彈出呢?
作者: lzx-shmily    时间: 2005-6-18 22:07
頂一下先,有辦法解決嗎?
作者: Trynew    时间: 2005-6-18 23:06
已修改:1、增加 Tmtony 的modDock模块,定位弹出窗体的显示位置,不过必须是子窗体位置才正确2、根据lzx-shmily 建议,增加判断在文本框的标志属性有字符串则不弹出辅助录入窗体3、eyewitnes的建议可以做到,但影响了简洁,未作修改。我想弹出窗体可以采用无边框窗体,象下拉控件一样。
作者: Trynew    时间: 2005-6-19 03:42
标题: 新修改版
[attach]11326[/attach](新修改版)

修改功能:

1、在文本框的标志属性中输入“NoPop”限制辅助窗体使用,输入表明或查询语句可自定义辅助窗体选择项(不做自动筛选)。

2、增加助记码功能,可根据字符串左边6位拼音首字母自动生成助记码,也可自己再修改,在文本框中输入字符串或助记符,均可筛选,返回选定的字符串。

3、弹出的辅助录入窗体设为无边框,可直接用回车或鼠标选定输入的字符串。按Esc键或选定字符串可以隐藏辅助录入窗体。
作者: 红叶    时间: 2005-9-27 18:31
不错
作者: mygodtony    时间: 2005-9-27 18:48
谢谢
作者: weetek    时间: 2005-9-27 19:51
谢谢分享了。
作者: cuiryan    时间: 2005-9-27 21:52
先学习学习
作者: jpsai    时间: 2005-9-28 04:28
ddddddddddddddddd
作者: mikal_2005    时间: 2005-9-28 19:03
真的不错!
作者: mikal_2005    时间: 2005-9-28 19:04
vell well!
作者: 王卫2005    时间: 2005-9-29 06:53
我看看先
作者: 王卫2005    时间: 2005-9-29 06:54
急着下载啊,
作者: 王卫2005    时间: 2005-9-29 06:54
没办法了
作者: zwl01    时间: 2005-10-9 16:01
谢谢
作者: cdwlove    时间: 2005-12-5 21:52
看帖不忘顶!!!
作者: songzhha    时间: 2005-12-6 17:59
谢谢,好用
作者: Dragxixi    时间: 2005-12-6 23:54
学习先
作者: zyz218    时间: 2005-12-7 00:37
[em01]
作者: 昏昏的无聊    时间: 2005-12-7 06:38
辛苦了[em01]
作者: waif19    时间: 2006-1-17 20:33
先看看.
作者: wxmins    时间: 2006-3-30 05:10
好同志,看了你好多帖了,你很用功啊!!
作者: 快乐王    时间: 2006-3-30 08:23
非常不错,谢谢!
作者: lyqjqly    时间: 2006-3-30 19:08
谢谢 。
作者: 陈洒    时间: 2006-5-8 20:59
好东西,我正在找的
作者: junetang    时间: 2006-5-15 04:31
我是菜鸟一个,还看不懂

哈哈
作者: stevenzibo    时间: 2006-5-26 20:43
Thanks
作者: xlonger    时间: 2006-5-27 20:06
这个贴子的例子哪个是最新,最完整?
作者: tsilon    时间: 2006-5-28 19:51
ding
作者: fjwen    时间: 2007-1-21 17:10
谢谢。
作者: coco7575    时间: 2007-4-7 01:25
[em02]我瞧瞧!!
作者: djch    时间: 2007-6-25 02:59
参考一下!
作者: godcoder    时间: 2007-9-2 08:26
但是這樣子窗体中每個文本框一輸入都會彈出列表框,怎樣在不需要輔助輸入的文本框中禁止彈出呢
作者: hugcy110    时间: 2007-10-2 21:50
看看学习学习..........................
作者: wx120-    时间: 2007-12-4 02:11
afasdfasdfasdfasdfsadfasdf
作者: sysyj1030    时间: 2008-6-4 14:59
[:50]
作者: zczc123    时间: 2008-7-13 15:15
[:50] [:50]
作者: xuwenning    时间: 2008-7-14 08:37
收藏[:50]
作者: tytill    时间: 2009-2-16 15:06
哇咔咔....这么好的东东...下来好好学习
作者: wsc0815    时间: 2009-2-16 15:23
学习一下
作者: zczc123    时间: 2009-2-24 21:20
谢谢
作者: zczc123    时间: 2009-2-24 21:20
非常好用!謝謝分享!
作者: mickey831    时间: 2009-2-26 10:07
很不错.学习学习!谢谢!
作者: 08a91lk    时间: 2009-5-29 13:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: 相当板札    时间: 2009-6-2 09:57
好东西,下载了
作者: YWM161616    时间: 2009-6-2 12:52
谢谢!
作者: 坡芽歌书    时间: 2009-7-29 14:34
谢谢
作者: jsan999    时间: 2009-9-16 16:21
yutyu
作者: longdoupj    时间: 2009-10-9 01:10
谢谢~                                 ~
作者: chaojianan    时间: 2009-10-10 08:55
收藏了。
作者: yanwei82123300    时间: 2009-11-19 16:19
非常好用!謝謝分享!
作者: 鱼儿游游    时间: 2009-12-2 14:25

作者: c101    时间: 2009-12-2 14:31
謝謝分享
作者: iamee    时间: 2010-2-7 00:14
很好~~
作者: lilihuanlh    时间: 2010-2-8 19:17
谢谢分享
作者: BILLFEI    时间: 2010-3-11 12:45
非常好用!謝謝分享!
作者: sunwrsun    时间: 2010-4-16 17:40
录入窗体
作者: 82077802    时间: 2010-4-16 18:39
学习了。谢谢
作者: fcghw    时间: 2010-5-5 15:35
謝謝分享!
作者: lgls31    时间: 2010-6-14 19:21
正在找,看适用不
作者: 小何    时间: 2010-6-17 08:55
弹出的辅助录入窗体设为无边框,可直接用回车或鼠标选定输入的字符串。按Esc键或选定字符串可以隐藏辅助录入窗体。
作者: wjl936    时间: 2011-1-8 14:06
好好学习一下
作者: wgh3g    时间: 2011-1-8 16:38
学习
作者: ZBJKJH    时间: 2011-1-8 19:42
xuexile
作者: bcfu    时间: 2011-4-22 15:26
kkkkkkkkkkkk
作者: TWH852002    时间: 2011-12-15 22:23
好例子,
作者: wgh3g    时间: 2011-12-15 22:42
谢谢分享
作者: xie62    时间: 2011-12-16 08:05
好好学习一下
作者: letian2004    时间: 2012-3-26 17:41
ASDADF
作者: boyandmerry    时间: 2012-3-26 19:57
这个看上去不错的嘛
作者: zhu320211    时间: 2012-5-1 19:08
看看好东西
作者: mgbd123    时间: 2012-5-8 17:14
整个速达的样子
作者: huihuiye180    时间: 2012-5-11 15:12
ibet国际由年底开业前半年,已经开始宣传,众人周知,直到年底如期开业,程序非常完美,集合优博 UN 和各平台的特点,
  
ibet国际总代只有10名以内。目前只有8位。量不到位,绝不开放总代号
  
开业2月以来。已经引来众多代理和会员的加入, 日量过百万的总代已经好几个了。虽然我还没到。但我相信你们加入,我会有的
  
单期投注上万的比比皆是了.会员已有取款30多万。10万,有取款图片各方面的。都是会员给总代。各总代互相交流得来的
  
平台目前已经限点4返点,即将限点3.5.迟早的事情而已
  
再不抓住机会。机会就跑了.半个月前,还能代理币开4.8 代理币是1W量兑换1个 每周发一次,直接发到总代,由总代分配
  
代理币的使用:4.0升4.1 消耗1个 4.2消耗2个。。4.3消耗4个 4.5消耗16个持续翻倍 4.8消耗100个 4.9 200个
     
注意了:目前平台已经限制,即使代理币,最高开4.6 2月10号才进行的政策。 下面有ibet国际平台的详细资料
  
本总代这里还有2名 4.9名额
  
ibet国际波士团队联系方式,在百度搜索ibet国际波士,ibet国际招商总代QQ:97053931  
  
1700/1800/1900/1500-1950元角分 4模式可独立选择
  
有5星4星任3任2 庄闲百家乐奖金1:2.15 3D截止20点.
  
重庆,江西,黑龙时时彩,3D 排列3 迟后推出农庄游戏  

1卡1户绑定,工农建提款可达5次 新增站内信手机投注功能
  
观看下级在线功能,UN有的,优博有的,Ibet都有 ibet没有的 他们更没有
  
代理币模式,1W量=1币,注册链接模式 VIP大户客户端网页版 VIP特权制度

ibet国际波士团队-招商总代QQ:97053931
作者: fly888    时间: 2012-8-13 11:57
谢谢,好东东。。
作者: huangli0356    时间: 2012-11-11 16:34
下啦..谢谢.
作者: huangli0356    时间: 2012-11-11 16:37
谢谢.不过好像不是我想要的结果
作者: 5574916    时间: 2013-2-5 03:31
谢谢分享

作者: 飞不动的鹰    时间: 2013-4-3 22:49
真的好高兴
作者: hqb    时间: 2013-4-4 09:21
学习
作者: st1988330    时间: 2013-4-25 10:18
来学习下
作者: mfkgy2000    时间: 2013-7-31 09:30
666666666666666666666666666666666
作者: jzbinbin5    时间: 2013-10-31 11:08
顶顶顶顶顶大
作者: leonshi    时间: 2013-11-3 11:13
前辈的作品,需要学习下

作者: alonet    时间: 2014-1-20 20:23
看看
作者: chenyingfengsx    时间: 2014-1-22 23:49
看看!
作者: gaofei186    时间: 2014-1-23 09:42
看看一下
作者: zpy2    时间: 2014-7-2 07:34
谢谢了!!
作者: wdongjiang    时间: 2014-7-27 15:43
有图吗
作者: stanleyfyy    时间: 2014-8-11 12:22
谢谢分享

作者: xlb004    时间: 2014-9-7 18:00
eeeeeeeeeeeee
作者: fl8081    时间: 2014-9-12 15:11
希望大家试用一下
作者: tong3373    时间: 2014-10-21 23:10
好,强大
作者: dhlhmgc    时间: 2014-10-22 01:12
看看,如何方便法!
作者: ivan2006299    时间: 2015-2-24 16:43

作者: 315611143    时间: 2015-6-28 16:01
afwfawefarargargfawrgfafw
作者: lfz9    时间: 2015-7-14 18:41
好好学习下。真好




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3