Visual Basic - Ayuda con resolucion Pantall

Life is soft - evento anual de software empresarial
 
Vista:

Ayuda con resolucion Pantall

Publicado por Nelson (20 intervenciones) el 15/06/2005 17:24:38
De antemano gracias por la ayuda que me puedan prestar, tengo una aplicacion en vb6 pero por cosa del destino un usuario utiliza una resolucion de panta baja y cuando intenta entra a la aplicacion se vuelve loca (la aplicacion) y se sale, como puedo corregir ese detalle.

Saludos,
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de RAUL
Val: 2
Ha aumentado su posición en 97 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Ayuda con resolucion Pantall

Publicado por RAUL (443 intervenciones) el 20/06/2005 04:41:13
1 CAMBIAS LA PANTALLA CON LA RESOLUCION ADECUADA PARA TU PROGRAMA.
2. CREAS OTRA VERSION QUE RESPETE ESTA RESOLUCION DE PANTALLA.
0. ANTES VERIFICAS LOS DRIVERS DEL MONITOR+ADAPTADOR+VIDEO, PUEDE QUE LA PC NO ESTE CONFIGURADA ADECUADAMENTE O FALTE ALGUN ADAPTADOR QUE TE DE UNA MEJOR RESOLUCION, CUIDADO CON LA FRECUENCIA QUE QUEMAS EL MONITOR.(VER MANUAL O PARTE POSTERIOR DEL MONITOR)
SUERTE.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 14
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Ayuda con resolucion Pantall

Publicado por SuNcO (599 intervenciones) el 22/06/2005 03:31:03
Yo utilizo este codigo en un sistema mio para verificar que la resolucion sea 1024x768

El codigo revisa primero si la resolucion es correcta, si no lo es, se revisa si la tarjeta y monitor la aceptan; si la aceptan te pregunta si desas cambiarla

Private Declare Function ChangeDisplaySettings Lib "user32" Alias "ChangeDisplaySettingsA" (lpDevMode As Any, ByVal dwFlags As Long) As Long
Private Declare Function EnumDisplaySettings Lib "user32" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As Long, ByVal iModeNum As Long, lpDevMode As Any) As Boolean

Const CCDEVICENAME = 32
Const CCFORMNAME = 32

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
dmUnusedPadding As Integer
dmBitsPerPel As Integer
dmPelsWidth As Long
dmPelsHeight As Long
dmDisplayFlags As Long
dmDisplayFrequency As Long
End Type

Dim DevM As DEVMODE

Const DM_PELSWIDTH = &H80000
Const DM_PELSHEIGHT = &H100000

Private Function ChecaResolucion() As Boolean
Dim a As Boolean
Dim i&
i = 0
Do
DoEvents
a = EnumDisplaySettings(0&, i&, DevM)
i = i + 1
If DevM.dmPelsWidth >= 1024 Then
ChecaResolucion = True
Exit Function
End If
Loop Until (a = False)
End Function

Private Sub Form_Load()
ancho = (Screen.Width \ Screen.TwipsPerPixelX)

If ancho < 1024 Then

If ChecaResolucion = True Then
If MsgBox("La Resolucion actual no permite ver el desempeño completo del Sistema. Se recomienda aumentarla. Desea que se aumente ahora ?", vbYesNo + vbQuestion) = vbYes Then
Dim Bu
DevM.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT
DevM.dmPelsWidth = 1024
DevM.dmPelsHeight = 768
Bu = ChangeDisplaySettings(DevM, 0)
Else
MsgBox "La Resolucion actual no permite ver el desempeño completo del Sistema. El Sistema debe cerrarse ahora", vbOKOnly + vbExclamation
End
End If
Else
MsgBox "La Resolucion actual no permite ver el desempeño completo del Sistema y al parecer el Monitor no los acepta. El Sistema debe cerrarse ahora", vbOKOnly + vbExclamation
End
End If

End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar