设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[窗体] 禁止鼠标滚轮的一个新方法

[复制链接]

点击这里给我发消息

跳转到指定楼层
1#
发表于 2009-2-10 10:23:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这是ACCESS中一个曾经很多人关心的老问题,虽然从ACCESS2002已经有鼠标滚轮事件了,但它并不提价取消事件的参数,
所以还是一个麻烦的问题.  (原来我以为鼠标滚轮事件过程可以控制鼠标滚轮,经 轻风 提醒,才发现不能~~)

在网上主要有2种解决方法
一个是使用子类化方法,在ACCESS中使用子类很占用资源并且导致不稳定,估计没有多少人敢用.
一个在窗体上用公共变量保存记录位置,在用滚轮移动记录后用代码重新移回原位置,这个方法的缺点是实际上记录已经移动了,如果有修改的记录,记录也已自动保存,达不到主要目的.

在这里我提供一个新的解决方案,主要是利用主子窗体的特性.在网上也有人提出用子窗体,但没有说出具体的实现方法.

虽然是用了主子窗体,但通过一些设置可以实现看上去只有一个窗体的效果.

我们知道,当窗体只有一条记录,并且不能添加新记录时,鼠标滚轮是没有用处的,根据这一点,通过如下方法实现窗体禁止鼠标滚轮

首先,需要主子2个窗体,子窗体放在主窗体的主体节上,两个窗体记录来源相同,设置链接字段
主窗体可以只包含主链接字段,并且不需要添加任何控件,记录选择器属性设为否,导航按钮设为是
子窗体上添加需要显示的字段,子窗体的记录选择器属性设为是,导航按钮设为否

然后,在主窗体上添加代码实现如下功能:
主窗体移到新记录时,
允许子窗体添加记录,子窗体设为数据输入模式,断开主子窗体连接
如果窗体移到其它记录时,
恢复主子窗体连接,禁止子窗体添加记录,取消子窗体数据输入模式

在子窗体上添加代码实现如下功能:
子窗体插入新记录后,同步主窗体

呵呵,看不明白了吧...请回复看例子吧

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

本帖子中包含更多资源

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

x

评分

参与人数 1经验 +5 收起 理由
tmtony + 5 不错的思路

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
发表于 2009-2-10 10:37:35 | 只看该作者
先看看效果如何, 再作评论.

点击这里给我发消息

3#
发表于 2009-2-10 10:40:00 | 只看该作者
试过之后,效果还是挺不错的, 加5分
4#
发表于 2009-2-10 10:40:09 | 只看该作者
又学一招

点击这里给我发消息

5#
 楼主| 发表于 2009-2-10 10:43:54 | 只看该作者
先看看效果如何, 再作评论.
tmtony 发表于 2009-2-10 10:37

其实,效果也不是特别理想,,我想最好还是不要去禁用滚轮,,仅在记录更新前提示就好了
6#
发表于 2009-2-10 11:04:04 | 只看该作者
保存下来,仔细学习~
7#
发表于 2009-2-10 12:21:35 | 只看该作者
学习


******************
*  一切皆有可能  *
******************

.

.
QQ群 48866293 / 12035577 / 7440532 / 13666209
http://forum.csdn.net/SList/Access .
http://www.accessbbs.cn/bbs/index.php .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
http://www.office-cn.net .
.
http://www.office-cn.net/home/space.php?uid=141646 .

点击这里给我发消息

8#
发表于 2009-2-10 14:23:24 | 只看该作者
最好是MS能在ACCESS中加上这个简单又实用的功能。
9#
发表于 2009-2-11 08:27:05 | 只看该作者
学习
10#
发表于 2009-2-11 17:14:24 | 只看该作者
我一直想解决这个问题呢,我看看哈
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-24 23:17 , Processed in 0.093798 second(s), 37 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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