Access - MENU INICIAL BD

   
Vista:

MENU INICIAL BD

Publicado por JOSUE (8 intervenciones) el 29/09/2010 11:58:51
BUenos días:
Necesito nuevamente vuestra ayuda por favor. Tengo una BD con un menu inicial, el cual tiene varios botones que abren diferentes formularios, un boton para salir de BD y una imagen de fondo. Este menu tiene un tamaño q ocupa casi toda la pantalla del ordenador, pero cuando abro la BD en otro ordenador mas pequeño se me queda muy grande el menú e incluso hay botones q no puedo ver. Mi pregusta es ¿¿se puede hacer un formulario el cual se adapte a las diferentes pantallas (17", 19", etc.), al igual que los botones y la imagen de fondo?? Creo q esto es un reto, por lo menos para mi q soy un novato en esto de las BD.
Gracias de antemano
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

RE:MENU INICIAL BD

Publicado por 2pl (461 intervenciones) el 29/09/2010 21:01:55
En un módulo metes esto

Declare Function glrMoveWindows Lib "user32" Alias "MoveWindow" (ByVal hwnd As Long, ByVal X As Long, ByVal Y As Long, ByVal nWindth As Long, ByVal nHeight As Long, ByVal bRepair As Long) As Long

Function GetScreenResolution() As String
Dim R As RECT, hwnd As Long, RetVal As Long
hwnd = GetDesktopWindow()
RetVal = GetWindowRect(hwnd, R)
GetScreenResolution = (R.x2 - R.x1) & "x" & (R.y2 - R.y1)
End Function

Lo siguiente los pones en el evento "Al abrir" del formulario que quieras

Dim posicion As String
' Para que abra el formulario siempre en la misma posición y con el tamaño que designes dependiendo de la resolución de la pantalla, los parametros son:
' posiciónX que es la posición horizontal
' posiciónY que es la posición vertical
' Ancho
' Alto
' True
If GetScreenResolution = "1024x768" Then
posicion = glrMoveWindows(Me.hwnd, 125, 25, 800, 540, True)
ElseIf GetScreenResolution = "1152x864" Then
posicion = glrMoveWindows(Me.hwnd, 200, 100, 800, 510, True)
Else
posicion = glrMoveWindows(Me.hwnd, 100, -20, 800, 510, True)
End If

Las medidas son las de mi programa
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

RE:MENU INICIAL BD

Publicado por JOSUE (8 intervenciones) el 30/09/2010 09:22:35
He hecho lo que me dices, pero el modulo falla, me da erro de compilación y me sombrea "R As RECT", sabes que falla??
Gracias
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

RE:MENU INICIAL BD

Publicado por 2pl (461 intervenciones) el 30/09/2010 16:01:18
Me deje en el tintero esto, metelo en el modulo
Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Declare Function GetDesktopWindow Lib "user32" () As Long
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

RE:MENU INICIAL BD

Publicado por 2pl (461 intervenciones) el 30/09/2010 16:04:18
Perdón, y esto
Type RECT
x1 As Long
y1 As Long
x2 As Long
y2 As Long
End Type
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

RE:MENU INICIAL BD

Publicado por JOSUE (8 intervenciones) el 30/09/2010 18:19:04
Ok, gracias, aún no lo he probado e otros PC pero parece q va. ¿como puedo hacer para que los botones q se kedan fuera de la resolución de una pantalla pequeña entre dentro de esta?? Es decir en mi pantalla de 21" tengo un boton abajo a la derecha, y en la pantalla de 15 de portatil este boton no se ve.
Gracias
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