Résolution de l'écran

Pour connaître la résolution de l'écran connecté au PC qui fait tourner votre application, il suffit de faire appel aux deux fonctions ci-dessous.

Fonctions que l'on placera dans un module général et que l'on sauvera sous mod_ResolutionEcran par exemple.

Option Compare Database
Option Explicit
'/
'/ A placer dans la partie déclarative
'/
'Facteur d'échelle calculé en fonction de la résolution actuelle de l'écran.
Global Const NCI_RESHORIZ = 8
Global Const NCI_RESVERTI = 10

'Pour obtenir la hauteur et la largeur de l'écran
Declare Function NCI_apiGetDeviceCaps Lib "gdi32" Alias "GetDeviceCaps" _
                    (ByVal hdc As Long, ByVal nIndex As Long) As Long

'Pour obtenir le descripteur numérique (entier long) de l'écran physique
Declare Function NCI_apiGetDesktopWindow Lib "user32" Alias "GetDesktopWindow" () As Long

'Pour obtenir le descripteur numérique de la fenêtre d'affichage
Declare Function NCI_apiGetDC Lib "user32" Alias "GetDC" (ByVal hwnd As Long) As Long

'Pour libérer la fenêtre de l'écran
Declare Function NCI_apiReleaseDC Lib "user32" Alias "ReleaseDC" _
                    (ByVal hwnd As Long, ByVal hdc As Long) As Long

Les fonctions :

Function HauteurEcran() As Integer
'Objectif: Retourner la résolution verticale de l'écran
    Dim ResolutionVerticale As Integer
    Dim hDesktopWnd As Long
    Dim hDCcaps As Long
    Dim intValRetour As Integer
    
    'Obtenir la résolution actuelle de l'écran
    hDesktopWnd = NCI_apiGetDesktopWindow()
    hDCcaps = NCI_apiGetDC(hDesktopWnd)
    ResolutionVerticale = NCI_apiGetDeviceCaps(hDCcaps, NCI_RESVERTI)
    intValRetour = NCI_apiReleaseDC(hDesktopWnd, hDCcaps)
    HauteurEcran = CInt(ResolutionVerticale)
   
End Function

   

Function LargeurEcran() As Integer
'Objectif: Retourner la résolution horizontale de l'écran
    Dim ResolutionHorizontale As Integer
    Dim hDesktopWnd As Long
    Dim hDCcaps As Long
    Dim intValRetour As Integer
    
    'Obtenir la résolution actuelle de l'écran
    hDesktopWnd = NCI_apiGetDesktopWindow()
    hDCcaps = NCI_apiGetDC(hDesktopWnd)
    ResolutionHorizontale = NCI_apiGetDeviceCaps(hDCcaps, NCI_RESHORIZ)
    intValRetour = NCI_apiReleaseDC(hDesktopWnd, hDCcaps)
    LargeurEcran = CInt(ResolutionHorizontale)

End Function


Dernière modification : 08/02/2010 02:12
Catégorie : Les mémos - Vrac
Page lue 9255 fois