设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: 老鬼
打印 上一主题 下一主题

[窗体] [求助]双子窗体与“成为当前”事件的冲突

[复制链接]
11#
发表于 2006-1-17 02:22:00 | 只看该作者
应该是进入了死循环,选一下"A"控件会更新子窗体,更新子窗体又更新"A"控件。
12#
发表于 2006-1-17 02:25:00 | 只看该作者
Application.Forms!主窗体!B.Requery

在你的例子中主要起什么作用?
13#
发表于 2006-1-18 02:03:00 | 只看该作者



只要主窗体是打开状态,即使不添加任何记录,这个情况就一直存在着,事实也就是这样。

不会因为你没有在子窗体中添加任何数据,而不发生这个刷新的事件。因为 子窗体的A是链接到主窗体的。

链接到主窗体,事实上就已经使得记录成为了当前。

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

还有一个问题,一旦刷新了主窗体,记录将会被保存。这样的话,一条不完整的记录将会被保存到表中。

这样的设计,如果您一定要使用成为当前事件来刷新的话,无法解决问题。

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

看来你刷新的意思是,希望a的列表会因为添加了数据而得到更新。

我的想法是,将添加和查询数据分开。设计一个相同的窗体(也包含两个子窗体),在原来的窗体中放置一个按钮打开该窗体(如果数据有效该按钮有效,否则该按钮无效)。

供老鬼参考,和诸位网友斧正。

[此贴子已经被作者于2006-1-17 18:04:59编辑过]

14#
 楼主| 发表于 2006-1-19 01:34:00 | 只看该作者
呵呵,对不起各位,其实我的问题使用了更新后事件与删除事件已经解决了,就是想更多了解一下成为当前事件的一些属性。

我原来的Application.Forms!主窗体!B.Requery一句是为了在数据更新或删除时让主窗体的B控件刷新一下。因为B控件的数据源引用了子窗体的数据。
15#
 楼主| 发表于 2006-1-21 18:23:00 | 只看该作者
有一个问题,就是刷新后光标会自动转到子窗体的第一行的第一个字段,有没有较简单的办法让光标保持在原处?
16#
发表于 2006-1-21 18:38:00 | 只看该作者
写一段代码将焦点返回到原控件不行吗?
17#
 楼主| 发表于 2006-1-21 19:15:00 | 只看该作者
我写了,可是不行。在式设计的窗体中控件非常多,当子窗体发生更新后事件时刷新了主窗体的一个控件。本来焦点应该保持在当前记录,可是不知为什么,好像在主窗体控件刷新后,整个子窗体都刷了一遍,结果焦点就跳到了第一条记录。我查了主窗体的那个控件,只有一个单击事件,没其他的了。

麻烦哪~~~
18#
发表于 2006-1-21 19:55:00 | 只看该作者
把修改后的例子传上来看一下
19#
发表于 2006-1-21 21:45:00 | 只看该作者
可以这样试试,先让子窗体获得焦点(setfocus),然后使用 gotocontrol 的方法。



更新子窗体的 address 后,子窗体的 CompanyName 控件获得焦点。







[此贴子已经被作者于2006-1-21 14:16:44编辑过]

本帖子中包含更多资源

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

x
20#
 楼主| 发表于 2006-1-21 22:25:00 | 只看该作者

真的很晕


大伙看看新的这个附件。里面有一个“表1”主窗体,打开这个主窗体,在主窗体的A控件选一个值,子窗体会随之跳出一些数据。当我在"表2_子窗体"里填加完数据后,移到一下行,将触发窗体“更新后”事件并刷新主窗体中的D控件,光标停在下一行记录。

然后大伙再看看“维护主界面”主窗体,打开后选“维护单号”,然后在子窗体中填数据,也将刷新主窗体的“汇率”控件,可是“更新后”事件发生后,整个主窗体会刷一下,然后光标就跑到子窗体第一行记录了。

这两个主窗体及其子窗体的设置几乎就是一样的,究竟怎么回事,我翻来复去都找不出原因,大伙帮我查一下~~~

本帖子中包含更多资源

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

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

本版积分规则

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

GMT+8, 2024-11-26 03:30 , Processed in 0.128535 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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