El objetivo de este código es simular el maximizado de un formulario para tener el formulario a pantalla completa sin que nos aparezca el botón de restaurar, botón que se muestra si lo maximizamos por medio del botón o con DoCdm.Maximize.
Pasos a seguir:
1º/ Crear un módulo estándar y pegar las siguientes declaraciones y el procedimiento:
'===========================================================================
' Declaraciones del API de Windows
'===========================================================================
Private Declare Function apiGetWindowRect _
Lib "user32" _
Alias "GetWindowRect" _
(ByVal hwnd As Long, _
lpRect As RECT) As Long
Private Declare Function apiMoveWindow _
Lib "user32" _
Alias "MoveWindow" _
(ByVal hwnd As Long, _
ByVal X As Long, _
ByVal Y As Long, _
ByVal nWidth As Long, _
ByVal nHeight As Long, _
ByVal bRepaint As Long) As Long
Private Declare Function apiGetParent _
Lib "user32" _
Alias "GetParent" _
(ByVal hwnd As Long) As Long
Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
'---------------------------------------------------------------------------------------
' Procedimiento : subMaximiza
' Autor : Sveinbjorn para siliconproject.com.ar/neckkito
' Fecha : 23/11/2013
' Propósito : Amplia o reduce el tamaño del formulario para que se ajuste, sin maximizar,
' a la ventana de access
' Uso : subMaximiza Me.Hwnd
'---------------------------------------------------------------------------------------
'
Public Sub subMaximiza(hwnd As Long)
'Declaramos las variables
Dim rec As RECT
Dim retVal As Long
Dim AltoVentana As Long
Dim AnchoVentana As Long
'Obtenemos las coordenadas de la ventana de access
retVal = apiGetWindowRect(apiGetParent(hwnd), rec)
'Se calcula el ancho y el alto de la ventana. Le resto 5 para que no aparezcan
'las barras de desplazamiento
AnchoVentana = rec.Right - rec.Left - 5
AltoVentana = rec.Bottom - rec.Top - 5
'Una vez hechos los cálculos, redimensionamos la ventana
retVal = apiMoveWindow(hwnd, 0, 0, AnchoVentana, AltoVentana, 1)
End Sub
2º/ En el formulario que se quiera "maximizar", en el evento al cargar, programamos este código:
Private Sub Form_Load()
subMaximiza Me.Hwnd
End Sub
3º/ Modificar estas dos propiedades del formulario, para que quede "chulo":
Estilo de Bordes: Ninguno
Movible: No
Si queréis ver una explicación detallada del código y una BD de ejemplo, podéis hacerlo en el siguiente enlace: http://bit.ly/1RlEeSJ
Un saludo!!
Simular el botón maximizar de un formulario
- Sveinbjorn
- Mensajes: 1390
- Registrado: Sab Oct 24, 2015 10:12 pm
Simular el botón maximizar de un formulario
Sveinbjorn El Rojo
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados