【发布时间】:2018-01-24 16:22:57
【问题描述】:
我想在单独的监视器上为图书馆的学生显示我的 Access 数据库的数据。
请问我应该使用什么软件或访问工具?
数据库应该是学生唯一可以访问的东西,这意味着他们无法访问计算机上的其他应用程序。
非常感谢您的宝贵时间。
【问题讨论】:
标签: database windows ms-access
我想在单独的监视器上为图书馆的学生显示我的 Access 数据库的数据。
请问我应该使用什么软件或访问工具?
数据库应该是学生唯一可以访问的东西,这意味着他们无法访问计算机上的其他应用程序。
非常感谢您的宝贵时间。
【问题讨论】:
标签: database windows ms-access
首先:如果您需要阻止用户访问其他应用程序,那么依赖您的 Access 应用程序在单独的监视器上是不安全的(原因有很多,但请按 Windows+E 为例)。
其次:Microsoft Access 将在上次打开它的同一台显示器上打开。虽然我假设你知道这一点,并且不会问这是否适合你。
第三:这里是实际移动 Access 应用程序窗口的 VBA 代码。它不能确定第二台显示器的位置——您必须根据屏幕规格更改值-1500(手动和硬编码,或者更好的是,谷歌一些代码来确定第二台显示器的位置)。在我的设置中,-1500 恰好位于我碰巧在左侧的第二台显示器的中间(可能不寻常?)。如果您的第二台显示器在右侧,那么我认为您需要一个大于第一台显示器分辨率的正值。它只需要在第二个屏幕内的某个地方 - 不需要完美地在边缘,因为代码会最大化窗口。结果:您需要对此进行试验。
它的作用:
VBA:
Declare Function winapi_ShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmd As Long) As Long
Declare Function winapi_MoveWindow Lib "user32" Alias "MoveWindow" (ByVal hwin As Long, ByVal X As Long, ByVal Y As Long, ByVal dx As Long, ByVal dy As Long, ByVal fRepaint As Long) As Long
Const SW_SHOWNORMAL = 1
Const SW_SHOWMAXIMIZED = 3
Public Sub MoveAccessWindow
winapi_ShowWindow Access.Application.hWndAccessApp, SW_SHOWNORMAL
winapi_Movewindow Access.Application.hWndAccessApp , -1500, 0, 1000, 1000, True
winapi_ShowWindow Access.Application.hWndAccessApp, SW_SHOWMAXIMIZED
End Sub
【讨论】: