PROGRAMA PARA CAMBIAR LA RESOLUCIÓN DE PANTALLA

 

Se crea un formulario principal, un formulario de acerca de… y un modulo:

 

Los formularios tienen esta forma:

 

El codigo del formulario 1 tiene:

 

Option Explicit

 

Private Sub B1024x768_Click()

i = 0

Do

    resultat = EnumDisplaySettings(0&, i, DevM)

    i = i + 1

Loop Until (resultat = False)

DevM.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT

DevM.dmPelsWidth = 1024

DevM.dmPelsHeight = 768

changement = ChangeDisplaySettings(DevM, 0)

End Sub

 

Private Sub B1280x1024_Click()

i = 0

Do

    resultat = EnumDisplaySettings(0&, i, DevM)

    i = i + 1

Loop Until (resultat = False)

DevM.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT

DevM.dmPelsWidth = 1280

DevM.dmPelsHeight = 1024

changement = ChangeDisplaySettings(DevM, 0)

End Sub

 

Private Sub B640x480_Click()

i = 0

Do

    resultat = EnumDisplaySettings(0&, i, DevM)

    i = i + 1

Loop Until (resultat = False)

DevM.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT

DevM.dmPelsWidth = 640

DevM.dmPelsHeight = 480

changement = ChangeDisplaySettings(DevM, 0)

End Sub

 

Private Sub B800x600_Click()

i = 0

Do

    resultat = EnumDisplaySettings(0&, i, DevM)

    i = i + 1

Loop Until (resultat = False)

DevM.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT

DevM.dmPelsWidth = 800

DevM.dmPelsHeight = 600

changement = ChangeDisplaySettings(DevM, 0)

End Sub

 

 

Private Sub Command1_Click()

Unload Me

End Sub

 

Private Sub Command2_Click()

Form2.Show 1

End Sub

 

El codigo del Formulario 2 contiene:

Option Explicit

 

Private Sub Command1_Click()

Unload Me

End Sub

 

Private Sub Form_Load()

Label4.Caption = "Liste des tâches version " & App.Major & "." & App.Minor & "." & App.Revision

End Sub

 

Private Sub Label2_Click()

Dim X As Long

X = Shell("start mailto:Patrice.MANGIN@wanadoo.fr", vbHide)

End Sub

 

Private Sub Label3_Click()

Dim X As Long

X = Shell("start http://perso.wanadoo.fr/mangin/", vbHide)

End Sub

 

 

Y el Contenido del Módulo1 es el siguiente:

 

Option Explicit

 

Public Declare Function EnumDisplaySettings Lib "user32" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As Long, ByVal iModeNum As Long, lpDevMode As Any) As Boolean

Public Declare Function ChangeDisplaySettings Lib "user32" Alias "ChangeDisplaySettingsA" (lpDevMode As Any, ByVal dwflags As Long) As Long

 

Public Const CCHDEVICENAME = 32

Public Const CCHFORMNAME = 32

Public Const DM_PELSWIDTH = &H80000

Public Const DM_PELSHEIGHT = &H100000

 

' Tous les champs du type DEVMODE ne sont pas utilisés ici

' Seulement trois ont rapport avec la résolution d'écran.

' Mais pour un bon fonctionnement du programme, il faut tout décrire !

Public Type DEVMODE

        dmDeviceName As String * CCHDEVICENAME

        dmSpecVersion As Integer

        dmDriverVersion As Integer

        dmSize As Integer

        dmDriverExtra As Integer

        dmFields As Long

        dmOrientation As Integer

        dmPaperSize As Integer

        dmPaperLength As Integer

        dmPaperWidth As Integer

        dmScale As Integer

        dmCopies As Integer

        dmDefaultSource As Integer

        dmPrintQuality As Integer

        dmColor As Integer

        dmDuplex As Integer

        dmYResolution As Integer

        dmTTOption As Integer

        dmCollate As Integer

        dmFormName As String * CCHFORMNAME

        dmUnusedPadding As Integer

        dmBitsPerPel As Long

        dmPelsWidth As Long

        dmPelsHeight As Long

        dmDisplayFlags As Long

        dmDisplayFrequency As Long

End Type

 

Global DevM As DEVMODE

 

Global resultat As Boolean

Global i, changement As Long