Programación General > Visual Basic 6.0 e inferiores
Cambiar Resolucion Pantalla En Xp
(1/1)
saroaes21:
Hola, mi duda es cómo puedo hacer para que se cambie la resolucion de la pantalla en Windows XP mediante un programa VB6.0, lo he conseguido cambiar en el 98 pero al pasarlo al XP no funciona, alguien me puede ayudar?? Si os sirve el código escribirme a brodrigueza@iberdrola.es y os lo mando es un programa chulo.
Gracias de antemano por vuestra ayuda.
Un saludo
_vgt_:
esta es facil!!, aki te pongo la funcion k yo utilizo siempre: comprobado k funciona:
--- Código: Text --- 'CAMBIO DE RESOLUCIONPrivate Declare Function EnumDisplaySettings Lib "user32" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As Long, ByVal iModeNum As Long, lpDevMode As Any) As BooleanPrivate Declare Function ChangeDisplaySettings Lib "user32" Alias "ChangeDisplaySettingsA" (lpDevMode As Any, ByVal dwflags As Long) As Long Const CCDEVICENAME = 32Const CCFORMNAME = 32Const DM_PELSWIDTH = &H80000Const DM_PELSHEIGHT = &H100000 Private Type DEVMODE dmDeviceName As String * CCDEVICENAME 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 * CCFORMNAME '20 dmUnusedPadding As Integer dmBitsPerPel As Integer dmPelsWidth As Long dmPelsHeight As Long dmDisplayFlags As Long dmDisplayFrequency As LongEnd Type Dim DevM As DEVMODE Function CambiaResolucion(BitPorPixel As Integer, Ancho As Integer, Alto As Integer) As Boolean 'Parámetros :'BitPorPixel : Nº de bits de color' 4 - 16 colores, 8 - 256 colores' 16 - 65.000 colores, 32 - 16 M de colores'Ancho : Nº de pixels de ancho'Alto : Nº de pixels de alto Dim a&a = EnumDisplaySettings(0&, 0&, DevM)DevM.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHTDevM.dmBitsPerPel = BitPorPixelDevM.dmPelsWidth = AnchoDevM.dmPelsHeight = Altoa = ChangeDisplaySettings(DevM, 0)If a = 0 Then CambiaResolucion = TrueElse CambiaResolucion = FalseEnd If End Function
La llamada es cantidad de facil, te la pongo
--- Código: Text --- Dim a& 'Llamada a la función para cambiar la resolucióna = CambiaResolucion(16 - 65#, 800, 600)
y ya esta la resolucion cambiada :hola:
TalegoZ gente!!
cpmario:
También puedes revisar mi mensaje en la siguiente discusión del foro:
http://foros.solocodigo.com/index.php?show...t=0entry37880
:)
Navegación
Ir a la versión completa