Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lcamara

Mudar as configurações do WIN.

Recommended Posts

Olá Galera.Preciso fazer a mudança e não estou achando isso no sposts anteriores.Preciso capturar as config´s atuais pois vou guardar em variáveis do meu sistema, mudar as config´s para 800X600 e quando encerrar meu sistema, voltar para as config´s que tinha antes de iniciar.Como aplicar a mudança?Grato pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Galera.Preciso fazer a mudança e não estou achando isso no sposts anteriores.Preciso capturar as config´s atuais pois vou guardar em variáveis do meu sistema, mudar as config´s para 800X600 e quando encerrar meu sistema, voltar para as config´s que tinha antes de iniciar.Como aplicar a mudança?Grato pela atenção.

o codigo para modificar é este
'Num módulo:Private 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 LongPrivate Const CCDEVICENAME = 32Private Const CCFORMNAME = 32Private Const DM_PELSWIDTH = &H80000Private Const DM_PELSHEIGHT = &H100000Private 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 LongEnd TypePublic Sub ChangeRes(iWidth As Single, iHeight _       As Single)  Dim DevM As DEVMODE  Dim a As Boolean  Dim i As Long  Dim b As Long  i = 0  Do    a = EnumDisplaySettings(0&, i&, DevM)    i = i + 1  Loop Until (a = False)  DevM.dmFields = DM_PELSWIDTH Or DM_PELSHEIGHT  DevM.dmPelsWidth = iWidth  DevM.dmPelsHeight = iHeight  b = ChangeDisplaySettings(DevM, 0)End Sub'P/ fazer a chamada:Call ChangeRes(800, 600)'só lembre de colocar uma resolução que o monitor aceite
e se precisar voltar a configuração original
Private Sub Obtem()  Dim xTwips%, yTwips%, xPixels#, YPixels#  xTwips = Screen.TwipsPerPixelX  yTwips = Screen.TwipsPerPixelY  YPixels = Screen.Height / yTwips  xPixels = Screen.Width / xTwips  Debug.print "A Resolução é: " & Str$(xPixels) + _              " por " + Str$(YPixels)End Sub
ponha esse codigo antes de alterar e p/ a resolução desejada e guarde os valores de xpixels e ypixels para para quando finalizar o programa chame a primeira função que eu passei e ponha esses valores.espero ter ajudado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.