Help and Support

ACC: How to Determine the Current Screen Resolution (95/97)

Article ID:148395
Last Review:January 19, 2007
Revision:3.3
This article was previously published under Q148395

SUMMARY

Advanced: Requires expert coding, interoperability, and multi-user skills.

This article shows you how to create a sample user-defined Visual Basic for Applications function to determine the current screen resolution. You can use this function to determine if you are running in standard VGA mode (640 x 480) or Super VGA mode (800 x 600 or 1024 x 768).

This article assumes that you are familiar with Visual Basic for Applications and with creating Microsoft Access applications using the programming tools provided with Microsoft Access. For more information about Visual Basic for Applications, please refer to your version of the "Building Applications with Microsoft Access" manual.

Back to the top

MORE INFORMATION

The following example demonstrates how to create and use the sample GetScreenResolution() function.

NOTE: You may have some Microsoft Windows API functions defined in an existing Microsoft Access library; therefore, your declarations may be duplicates. If you receive a duplicate procedure name error message, remove or comment out the declarations statement in your code.
1.Create a new module, and type the following Declarations and function:
      '*****************************************************************
      ' DECLARATIONS SECTION
      '*****************************************************************

      Option Explicit

      Type RECT
          x1 As Long
          y1 As Long
          x2 As Long
          y2 As Long
      End Type

      ' NOTE: The following declare statements are case sensitive.

      Declare Function GetDesktopWindow Lib "User32" () As Long
      Declare Function GetWindowRect Lib "User32" _
         (ByVal hWnd As Long, rectangle As RECT) As Long

      '*****************************************************************
      ' FUNCTION: GetScreenResolution()
      '
      ' PURPOSE:
      '   To determine the current screen size or resolution.
      '
      ' RETURN:
      '   The current screen resolution. Typically one of the following:
      '      640 x 480
      '      800 x 600
      '      1024 x 768
      '
      '*****************************************************************
      Function GetScreenResolution () as String
          Dim R As RECT
          Dim hWnd As Long
          Dim RetVal As Long
          hWnd = GetDesktopWindow()
          RetVal = GetWindowRect(hWnd, R)
          GetScreenResolution = (R.x2 - R.x1) & "x" & (R.y2 - R.y1)
      End Function
						
2.On the View menu, click Debug window.
3.Type the following line in the Debug window, and then press ENTER:
? GetScreenResolution()
Note that the current screen resolution is displayed in the Debug window. If the current resolution is standard VGA, the following is displayed in the Debug window:

640x480

Back to the top

REFERENCES

For more information about how to determine the current screen resolution in Microsoft Access 2.0, please see the following article in the Microsoft Knowledge Base:
113458 (http://support.microsoft.com/kb/113458/EN-US/) How to Determine the Current Screen Resolution (2.0)
For more information about API Calls, please see the following article in the Microsoft Knowledge Base:
147781 (http://support.microsoft.com/kb/147781/EN-US/) How to Convert API Calls from 16-bit to 32-bit.

Back to the top


APPLIES TO
Microsoft Access 95 Standard Edition
Microsoft Access 97 Standard Edition

Back to the top

Keywords: 
kbhowto kbprogramming KB148395

Back to the top

Article Translations

 

Related Support Centers

Other Support Options

  • Contact Microsoft
    Phone Numbers, Support Options and Pricing, Online Help, and more.
  • Customer Service
    For non-technical assistance with product purchases, subscriptions, online services, events, training courses, corporate sales, piracy issues, and more.
  • Newsgroups
    Pose a question to other users. Discussion groups and Forums about specific Microsoft products, technologies, and services.