Formulario MDI

Disculpa la molestia pero tengo una pregunta para ti, no tengo mucha exp. En visual basic 6 así que si me puedes enviar una explicación bien definida te lo agradecería, necesito quitarle a un MDI como maximizar, minimizar y cerrar.
Te pregunto a ti porque veo que te preocupas por los problemas de los demás

1 respuesta

Respuesta
1
Perdona, el código anterior no está del todo bien, usa el siguiente :
Option Explicit
#If Win32 Then
Private Declare Function SetWindowLong Lib "user32" Alias _
"SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias _
"GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) _
As Long
#Else
Declare Function SetWindowLong Lib "User" (ByVal hwnd As Integer, _
ByVal nIndex As Integer, ByVal dwNewLong As Long) As Long
Declare Function GetWindowLong Lib "User" (ByVal hwnd As Integer, _
ByVal nIndex As Integer) As Long
#End If
Const WS_MINIMIZEBOX = &H20000
Const WS_MAXIMIZEBOX = &H10000
Const GWL_STYLE = (-16)
Private Sub MDIForm_Load()
Dim L As Long
L = GetWindowLong(Me.hwnd, GWL_STYLE)
L = L And Not (WS_MINIMIZEBOX)
L = L And Not (WS_MAXIMIZEBOX)
L = SetWindowLong(Me.hwnd, GWL_STYLE, L)
End Sub
Perdón por el desliz
Muchas Gracias por tu atención, respuesta excelente
Desgraciadamente ( e incompresiblemente ), los programadores no han dotado de ciertas propiedades a los formularios MDI, que si que tienen los formularios normales.
Así, si eres principiante, te va a costar un poco hacer este trabajo aparentemente tan simple. Si no te es realmente necesario, lo dejaría para más adelante.
Para hacerlo tendrás que usar API's de Windows. Para una introducción. Aquí te escribo una dirección, que explica que API y que propiedades de la API usar.
http://www.idg.es/pcworld/ShowSol.asp?ID=1025
Si no tienes experiencia utilizando API's, aunque el documento deja bien claro como usar esta en concreto, te adjunto un pequeño ejemplo:
'Declaraciones en el formulario
Private Declare Function GetWindowLong Lib "User" (ByVal hWnd As Integer, ByVal
nIndex As Integer) As Long
Private Declare Function SetWindowLong Lib "User" (ByVal hWnd As Integer, ByVal
nIndex As Integer, ByVal dwNewLong As Long) As Long
Const GWL_STYLE = (-16)
Const WS_THICKFRAME = &H40000
' Cuando se cargue el formulario, eliminaremos toda posibilidad de minimizar o maximizar
Private Sub MDIForm_Load()
Dim CurStyle As Long
Dim NewStyle As Long
CurStyle = GetWindowLong(MDIForm1.hWnd, GWL_STYLE)
NewStyle = SetWindowLong(MDIForm1.hWnd, GWL_STYLE, CurStyle And
Not (WS_THICKFRAME))
End Sub
Espero que te haya sido de ayuda y que entiendas el escrito.
Si te queda alguna duda, no dudes en preguntar
Magne

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas