send
Grupo de Telegram
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Cambiar Resolucion De Pantalla

  • 0 Respuestas
  • 1257 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5283
  • Actividad:
    35%
  • Reputación 28
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« en: Julio 26, 2010, 04:10:41 pm »
si tengo un programa que quiero que se ejecute en 800x600 y el ordenador en el que lo voy a ejecutar tiene puesto 1024x768, guardo en unas variables el 1024x768 y cambio la resulucion a 800x600, cuando el usuario salga o termine el programa se vuelve a cambiar a la que tenia puesta el usuario 1024x768.


VAMOS A USAR UN MODULO Y UN FORM.AL ABRIR EL PROGRAMA SE CAMBIARA LA RESOLUCION A 800X600 Y AL CERRAR LA VENTANA DEL FORM SE CAMBIARA A LA QUE TENIA EL PC(NATURALMENTE SI TIENES LA MISMA QUE EL EJEMPLO EL EFECTO NO SE NOTA).

COPIA ESTO EN UN MODULO LLAMALO COMO QUIERAS:

Código: Visual Basic
  1. Private Declare Function EnumDisplaySettings Lib "user32" Alias "EnumDisplaySettingsA" _
  2. (ByVal lpszDeviceName As Long, ByVal iModeNum As Long, lpDevMode As Any) As Boolean
  3.  
  4.  
  5. Private Declare Function ChangeDisplaySettings Lib "user32" Alias "ChangeDisplaySettingsA" _
  6. (lpDevMode As Any, ByVal dwflags As Long) As Long
  7.  
  8. Const CCDEVICENAME = 32
  9. Const CCFORMNAME = 32
  10. Const DM_PELSWIDTH = &H80000
  11. Const DM_PELSHEIGHT = &H100000
  12.  
  13.  
  14. Private Type DEVMODE
  15. dmDeviceName As String * CCDEVICENAME
  16. dmSpecVersion As Integer
  17. dmDriverVersion As Integer
  18. dmSize As Integer
  19. dmDriverExtra As Integer
  20. dmFields As Long
  21. dmOrientation As Integer
  22. dmPaperSize As Integer
  23. dmPaperLength As Integer
  24. dmPaperWidth As Integer
  25. dmScale As Integer
  26. dmCopies As Integer
  27. dmDefaultSource As Integer
  28. dmPrintQuality As Integer
  29. dmColor As Integer
  30. dmDuplex As Integer
  31. dmYResolution As Integer
  32. dmTTOption As Integer
  33. dmCollate As Integer
  34. dmFormName As String * CCFORMNAME
  35. dmUnusedPadding As Integer
  36. dmBitsPerPel As Integer
  37. dmPelsWidth As Long
  38. dmPelsHeight As Long
  39. dmDisplayFlags As Long
  40. dmDisplayFrequency As Long
  41. End Type
  42.  
  43. Sub ChangeRes(iWidth As Single, iHeight As Single)
  44.  
  45. Dim DevM As DEVMODE
  46. Dim a As Boolean
  47. Dim i&
  48. i = 0
  49.  
  50.  
  51. Do
  52. a = EnumDisplaySettings(0&, i&, DevM)
  53. i = i + 1
  54. Loop Until (a = False)
  55.  
  56. Dim b&
  57.  
  58. DevM.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT
  59. DevM.dmPelsWidth = iWidth
  60. DevM.dmPelsHeight = iHeight
  61.  
  62. b = ChangeDisplaySettings(DevM, 0)
  63.  
  64. End Sub

COPIA ESTO EN UN FORM:

Código: Visual Basic
  1. Public ancho As Single
  2. Public alto As Single
  3. Private Sub Form_Load()
  4. 'guardamos la resolucion actual en ancho y alto para
  5. 'luego volver a ponerla cuando se cierre el programa
  6. 'con la x
  7.  
  8. ancho = iWidth
  9. alto = iHeight
  10. 'cambiamos la resolucion a 800x600
  11.  
  12. Call ChangeRes(800, 600)
  13. End Sub
  14.  
  15. Private Sub Form_Unload(Cancel As Integer)'cuando se cierra el form
  16. Call ChangeRes(ancho, alto)'devolvemos la resolucion guardada en ancho,alto
  17.  
  18. End Sub
« Última modificación: Mayo 12, 2014, 03:25:15 pm por Expermicid »


 

¿Te gustó el post? COMPARTILO!



Como impedir cambiar el tamaño de una ventana redimensionable

Iniciado por ANTRAX

Respuestas: 0
Vistas: 1486
Último mensaje Julio 26, 2010, 11:33:48 am
por ANTRAX
Como cambiar de color una columna de MSFlexgrid

Iniciado por ANTRAX

Respuestas: 0
Vistas: 2266
Último mensaje Julio 26, 2010, 11:30:30 am
por ANTRAX
Cambiar el nombre del ordenador (A pura API)

Iniciado por ANTRAX

Respuestas: 0
Vistas: 1063
Último mensaje Julio 26, 2010, 12:19:48 pm
por ANTRAX
Cambiar texto a botones de MsgBox

Iniciado por ANTRAX

Respuestas: 3
Vistas: 5167
Último mensaje Agosto 23, 2013, 01:23:19 pm
por [L]ord [R]NA
Cambiar Fecha u Hora del Sistema

Iniciado por ANTRAX

Respuestas: 0
Vistas: 1280
Último mensaje Julio 26, 2010, 01:39:27 pm
por ANTRAX