access 窗体最小化后的再打开问题

朋友,你好,最近遇到了一个问题,具体如下:我在主窗体中的“加载”、“打开”和“成为当前”三个属性中都是用了下面的代码:DoCmd.RunCommandacCmdAppMi... 朋友,你好,最近遇到了一个问题,具体如下:
我在主窗体中的“加载”、“打开”和“成为当前”三个属性中都是用了下面的代码:
DoCmd.RunCommand acCmdAppMinimize------这个是使access窗体最小化
DoCmd.Maximize-----这个是使主窗体最大化
按道理来说,当打开这个主窗体时,无论什么情况下,窗体都是最大化显示的,但是实际却不是。
当我将主窗体最小化到任务栏后,或者直接点击任务栏使其最小化,然后再打开的时候,窗体还是要原来的大小,没有最大化。请问,这是什么原因呢?
代码如下:
Private Sub Form_Current()
DoCmd.RunCommand acCmdAppMinimize
DoCmd.Maximize
End Sub

Private Sub Form_Open(Cancel As Integer)
DoCmd.RunCommand acCmdAppMinimize
DoCmd.Maximize
End Sub

Private Sub Form_Load()
DoCmd.RunCommand acCmdAppMinimize
DoCmd.Maximize
展开
 我来答
tjrmgs
2015-11-05 · TA获得超过5765个赞
知道大有可为答主
回答量:2161
采纳率:94%
帮助的人:1032万
展开全部
首先这三个事件都使用相同的代码没有什么意义,而且会增加无谓的系统开销。

一般ACCESS窗体打开后会按顺序触发如下事件:
Open → Load → Resize → Activate → Current

您那三个事件中最先发生的是窗体“打开”事件,跟着是“加载”事件,最后是“成为当前”事件。

这三个事件里都执行相同的代码,最后ACCESS主界面处于最小化状态是由“成为当前”事件中的代码所决定的,前两个事件中的代码执行了也白搭,因为主界面的最后状态由最后那次操作所决定。

需要指出的是“成为当前”事件会随窗体记录指针的改变而不断发生,这样您的主界面会在主窗体打开后因当前记录位置的改变而不断最小化,这样会使情况变得很糟糕。所以建议仅在窗体“打开”事件执行一次主界面最小化方法就行了。

关于ACCESS主界面最小化后再最大化和复原时,有关代码代码未能让主窗体跟着最大化,是因为ACCESS主界面最大化并不会触发窗体的“打开”、“加载”和“成为当前”等事件,因此不会出现您所期望的那种效果。

由于ACCESS的固有局限,实现这种效果比较难办,即使实现,其效果也是不怎么理想。这里提供一点思路,在主窗体的“Resize”事件里,判断窗体的状态,根据不同的窗体状态执行相应的操作。请参考我以往的一条知道回答,里面也许会有一些有用的参考价值,自行研究一下吧,希望您能够获得理想的效果。相关连接:http://zhidao.baidu.com/question/1238027571957975419
追问
太专业了,我试试看吧,希望能成功,可能还要再麻烦你。
来自:求助得到的回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式