微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MS-Access 2010 - 将外部应用程序带到前台问题

如何解决MS-Access 2010 - 将外部应用程序带到前台问题

我有一个奇怪的问题。我正在尝试将外部应用程序置于 MS-Access 2010 的前面。外部应用程序 (Evince) 是使用 shell 命令打开的,如下所示:

taskID = Shell("C:\Program Files (x86)\Evince\bin\evince " & inpFile)

我有一个按钮可以将 Evince 应用程序放在前面,如下所示:

AppActivate taskID,True

如果按钮位于普通窗体或子窗体上,则此方法效果很好,其中主窗体是具有此子窗体控件的唯一打开窗体。但是,在我的应用程序中,我将子表单用作所有表单上的通用标题。现在,如果我打开另一个具有相同子窗体的窗体并单击按钮将 Evince 移到前面,我可以看到 Evince 移到前面,然后立即再次移到后面。仅当子表单在其他表单上重复使用时才会发生这种情况。

看起来 MS-Access 被混淆了,因为该按钮位于打开了多个实例的子窗体上。我尝试了很多东西,比如将焦点移到主窗体上,将代码移动到模块中的 Evince 应用程序等。但是只要按钮在一个已经打开多次的子窗体实例上,我就无法得到它工作。

有人知道如何解决这个问题吗?到目前为止,我想到的唯一解决方案是不使用子表单作为通用标题。但这意味着复制子窗体上的控件和代码几乎一百次(因为这是使用此子窗体的窗体的数量)。所以我试图避免这种情况,但如何...?

ps。此应用程序处于 rdp 环境中,用户别无选择,只能单击按钮将应用程序移至最前面。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。