MS Access AcDialog隐藏表格

时间:2019-05-28 14:47:34

标签: ms-access

我的访问表单中有一个按钮单击事件,

const endpoint = "https://login.microsoftonline.com/{tenant}/oauth2/token";
    const requestParams = {
      client_id: "{clientid}",
      client_secret: "{clientsecret}",
      resource: "https://graph.microsoft.com",
      grant_type: "client_credentials"
    };

单击此按钮可以在对话框视图中打开frmStudentAll,但是今天突然单击此按钮并没有打开该表单。我以为每次单击此按钮时Access都会崩溃,但我仍然可以编辑VBA,但不能按GUI中的任何按钮。我的想法是acDialog在一个我看不见的地方打开了一个非常小的表单,如果不关闭它就无法按任何东西。我必须使用任务管理器关闭Access。

DoCmd.OpenForm "frmStudentsAll", acNormal, , , , acDialog

仅在普通视图中打开表单即可,但这并不是我想要的。我最近没有进行任何新的Access更新。不知道为什么会这样。

2 个答案:

答案 0 :(得分:2)

问题在于表单确实打开了,但位于屏幕外。

当您使用多显示器设置或使用数据库使用不同分辨率的其他用户时,这是一个常见问题。

默认情况下,Access存储表单相对于数据库窗口的位置。如果特定用户有两个屏幕或非常大的屏幕,则他可以轻松地将其放置在其他人无法到达的位置。甚至单个用户都可以将其放置在他自己看不见的地方,方法是先在第二个屏幕上打开Access时将其放在第一个屏幕上,然后在第一个屏幕上打开Access。

为避免这种情况,请在表单的属性窗格中将自动居中设置为。这样可以确保表单始终相对于Access应用程序窗口居中,因此只要在屏幕上显示Access,就始终在屏幕上。

或者,当您由于此问题而被锁定在数据库之外而无法调整表单时,可以在VBA立即窗口中使用Forms!frmStudentsAll.Move 0,0来重新放置它。这样,您不必在发生这种情况时关闭数据库。

答案 1 :(得分:1)

不确定这是否有帮助,但是我还是把它扔了出去。当我设置了两个监视器时,我遇到了类似的问题。然后丢了一个。我一直都在使用一个程序,但是突然间它不起作用。花了一段时间才能启动它。该程序正在第二个不再存在的屏幕上打开。只是在黑暗中开枪...祝你好运!