Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]当在子窗体的Current事件,指定父窗体数据源时,打开窗体不执行父窗体Upload事件

shepdog  发表于:2013-12-11 17:18:18  
复制

�������ش˸���

如附件。

新建一窗体,在设计视图添加子窗体,在子窗体Current事件添加如下过程:

Private Sub Form_Current()
Me.Parent.Form.RecordSource = "Select * from tp_date;"
End Sub

 

然后在父窗体的Upload事件中加入测试代码:

Private Sub Form_Load()
MsgBox "执行Upload;"
Me.Text2 = "加载"
End Sub

 

每次打开父窗体时,不会执行父窗体的Form_Load事件,只有在用鼠标单击任一控件的时候,才会执行Form_Load。

而且,打开父窗体后的第一次单击,控件是不会获得焦点的。导致我在设置Upload事件和gotfocus事件时,刚父窗体的第一次单击,出现异常。

这是为什么呢?

 

Top
落尘_小新 发表于:2013-12-11 19:17:09
为会么不把 Me.Parent.Form.RecordSource = "Select * from tp_date;"  放到父窗体加载事件中写成  Me.RecordSource = "Select * from tp_date;" 呢.

殷小宝 发表于:2013-12-11 23:01:10
虽然父窗体打开了,但子窗体未成为当前,父窗体源未加载,没有加载完全,所以还不能执行其中的代码。等父窗体加载完成后就执行其中的代码了。

shepdog 发表于:2013-12-12 09:15:30

谢谢楼上的两位!

1. 用于在父窗体,显示子窗体记录对应的关联信息,主要是为了在父窗体更大的显示面积,所以不能在父窗体指定。

2.应该不是加载的问题,单击父窗体的任一控件,也会触发Upload事件。



总记录:3篇  页次:1/1 9 1 :