Jump to content
Sign in to follow this  
Tiago Vieira

Definir resolução em Access

Recommended Posts

Tiago Vieira

Boas

Preciso de ajuda....

Tenho uma base de dados que ao abrir nos computadores da empresa abrem com uma resolução diferente e os formulários ficam com um tipo de letra muito maior, fica tudo desconfigurado.

Haverá alguma forma de definir o tipo de resolução para abrir de igual modo em todos os computadores? Código vba...

Obrigado

Share this post


Link to post
Share on other sites
progster

Isso nunca me aconteceu. Os computadores da empresa têm a mesma versão do office instalado? Já descartas-te a hipotese de virose?


Não resolvo dúvidas por PM.

Share this post


Link to post
Share on other sites
MMarques

Isso já me aconteceu, é por causa da resolução nativa dos monitores e não tens outra solução senão diminuir o tamanho dos formulários para se poderem visualizar correctamente em todos os computadores. Ou então fazes formulários de ecrã inteiro e fazes com que as labels e inputboxes aumentem de tamanho automáticamente segundo o tamanho da janela.

Share this post


Link to post
Share on other sites
JRodrigues

Este tópico seria mais para o quadro do VBA. Mesmo assim aqui vai código encontrado na net...

Option Explicit
Declare Function EnumDisplaySettings Lib "user32" Alias "EnumDisplaySettingsA" (ByVal lpszDeviceName As String, ByVal iModeNum As Long, lpDevMode As DEVMODE) As Long
Type DEVMODE
    dmDeviceName As String * 32
    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 * 32
    dmUnusedPadding As Integer
    dmBitsPerPixel As Integer
    dmPelsWidth As Long
    dmPelsHeight As Long
    dmDisplayFlags As Long
    dmDisplayFrequency As Long
    ' The following only appear in Windows 95, 98, 2000
    dmICMMethod As Long
    dmICMIntent As Long
    dmMediaType As Long
    dmDitherType As Long
    dmReserved1 As Long
    dmReserved2 As Long
    ' The following only appear in Windows 2000
    dmPanningWidth As Long
    dmPanningHeight As Long
End Type

Sub Exemplo()
Dim XxX As String
XxX = RESOLA
' Só para testar o retorna da função RESOLA
MsgBox XxX
''
If XxX <> "1024x768" And XxX <> "800x600" Then
  MsgBox "Esta aplicação foi optimizada para resoluções de écran de 1024x768 ou 800x600" + vbLf + vbLf _
  + "com a resolução seleccionada " + XxX + " é provavel a deficiente utilização.", vbExclamation
End If
End Sub

Public Function RESOLA() As String
Dim dm As DEVMODE   ' info about the display device
Dim retval As Long  ' return value
' Initialize the structure.
dm.dmSize = Len(dm)
' Get the display settings for the current monitor and mode.
retval = EnumDisplaySettings(vbNullString, ENUM_CURRENT_SETTINGS, dm)
RESOLA = LTrim(RTrim(Str(dm.dmPelsWidth))) + "x" + LTrim(RTrim(Str(dm.dmPelsHeight)))
End Function

Dialecto Office 2000

HTH

João

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.