如何使用 GetSystemMetrics() API 调用
发布网友
发布时间:2022-05-24 12:50
我来回答
共1个回答
热心网友
时间:2023-10-14 04:29
高级: 需要专家编码、 互操作性,和多用户技能。
在 Windows 环境中不同的显示分辨率可能会导致屏幕显示出的比例。作为一名开发人员,您可以通过使用 Windows 应用程序编程接口 (API) 函数 GetSystemMetrics() 获取宽度和高度的窗口显示的各种元素。 将此函数合并到一个 Microsoft Access 应用程序,使您可以设计用户界面的详细信息。本文介绍 GetSystemMetrics() API 函数,并说明了如何从 Microsoft Access 中调用该函数。
本文假定您熟悉 Visual Basic 应用程序的使用和创建 Access 应用程序使用提供的 Microsoft Access 的编程工具。有关 Visual Basic 应用程序的详细信息,请参阅您构建应用程序与 Microsoft 访问手册的版本。
注: 为应用程序的 Visual Basic 称为基本访问中 Microsoft Access 版本 1.x 和 2.0。有关访问基本的详细信息请参阅在 Microsoft Access 1.x 版本中"以编程的介绍"手动或在 Microsoft Access 版本 2.0 构建应用程序手册。
loadTOCNode(1, 'moreinformation');
Windows GetSystemMetrics() API 函数检索有关系统指标 (宽度和高度的一个特定的窗口的各种显示元素) 的信息。GetSystemMetrics() 函数,也可以返回指示鼠标是否存在,或如果反转鼠标左右按钮的含义的标志。系统度量标准取决于系统显示,并可能会有所不同,显示来显示。
若要用于 GetSystemMetrics() 函数,请按照下列步骤操作:
将下面的声明语句,一个模块取决于哪个版本的 Microsoft 访问您的声明节中使用的一个放置。
在 Microsoft Access 7.0 和 97:
Declare Function GetSystemMetrics& Lib "User32" (ByVal nIndex&) NOTE: The above statement is case-sensitive. In Microsoft Access 1.x or 2.0: Declare Function GetSystemMetrics% Lib "user" (ByVal nIndex%)
具体取决于您要确定哪个窗口属性,您必须定义要传递给该 GetSystemMetrics() 正确的常量函数。下面是示例声明的常量和它们的含义。默认情况下的常数是私有。如果要将这些常数放在全局模块中并让他们提供对整个应用程序,然后您将不得不添加公共常数的语句的开头。(公用 Const SM_CXSCREEN = 0)。有关这些常数可用于 Windows 95 的完整列表,请参阅 Win32 软件开发工具包。
Const SM_CXSCREEN = 0 ' Width of screen Const SM_CYSCREEN = 1 ' Height of screen Const SM_CXFULLSCREEN = 16 ' Width of window client area Const SM_CYFULLSCREEN = 17 ' Height of window client area Const SM_CYMENU = 15 ' Height of menu Const SM_CYCAPTION = 4 ' Height of caption or title Const SM_CXFRAME = 32 ' Width of window frame Const SM_CYFRAME = 33 ' Height of window frame Const SM_CXHSCROLL = 21 ' Width of arrow bitmap on ' horizontal scroll bar Const SM_CYHSCROLL = 3 ' Height of arrow bitmap on ' horizontal scroll bar Const SM_CXVSCROLL = 2 ' Width of arrow bitmap on ' vertical scroll bar Const SM_CYVSCROLL = 20 ' Height of arrow bitmap on ' vertical scroll bar Const SM_CXSIZE = 30 ' Width of bitmaps in title bar Const SM_CYSIZE = 31 ' Height of bitmaps in title bar Const SM_CXCURSOR = 13 ' Width of cursor Const SM_CYCURSOR = 14 ' Height of cursor Const SM_CXBORDER = 5 ' Width of window frame that cannot ' be sized Const SM_CYBORDER = 6 ' Height of window frame that cannot ' be sized Const SM_CXDOUBLECLICK = 36 ' Width of rectangle around the ' location of the first click. The ' second click must occur in the ' same rectangular location. Const SM_CYDOUBLECLICK = 37 ' Height of rectangle around the ' location of the first click. The ' second click must occur in the ' same rectangular location. Const SM_CXDLGFRAME = 7 ' Width of dialog frame window Const SM_CYDLGFRAME = 8 ' Height of dialog frame window Const SM_CXICON = 11 ' Width of icon Const SM_CYICON = 12 ' Height of icon Const SM_CXICONSPACING = 38 ' Width of rectangles the system ' uses to position tiled icons Const SM_CYICONSPACING = 39 ' Height of rectangles the system ' uses to position tiled icons Const SM_CXMIN = 28 ' Minimum width of window Const SM_CYMIN = 29 ' Minimum height of window Const SM_CXMINTRACK = 34 ' Minimum tracking width of window Const SM_CYMINTRACK = 35 ' Minimum tracking height of window Const SM_CXHTHUMB = 10 ' Width of scroll box (thumb) on ' horizontal scroll bar Const SM_CYVTHUMB = 9 ' Width of scroll box (thumb) on ' vertical scroll bar Const SM_DBCSENABLED = 42 ' Returns a non-zero if the current ' Windows version uses double-byte ' characters, otherwise returns ' zero Const SM_DEBUG = 22 ' Returns non-zero if the Windows ' version is a debugging version Const SM_MENUDROPALIGNMENT = 40 ' Alignment of pop-up menus. If zero, ' left side is aligned with ' corresponding left side of menu- ' bar item. If non-zero, left side ' is aligned with right side of ' corresponding menu bar item Const SM_MOUSEPRESENT = 19 ' Non-zero if mouse hardware is ' installed Const SM_PENWINDOWS = 41 ' Handle of Pen Windows dynamic link ' library if Pen Windows is ' installed Const SM_SWAPBUTTON = 23 ' Non-zero if the left and right ' mouse buttons are swapped下面的示例调用将返回在窗体的标题栏的高度: