UniversoExcelForo

Respuesta a consultas.
Fecha de creación: 09.Abril.2012

Fundadores: Wibly,Tyno,Servando,Sakkar,Rosendo2,RMaximo,Railar,Mcoronel,Ioyama,Igtelo,Hugotron,Drochar,Dedos,Alberto,Adolfo

No se pueden hacer consultas de Excel o VBA por mensaje privado.
Utiliza el botón buscar del foro y te ahorras tiempo para obtener "ayuda".

No estás conectado. Conéctate o registrate

Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje [Página 1 de 1.]

anthuan100


Buen día,

Dejo el siguiente aporta. 

Este es para quitar el boton X del formulario
 1) creas un modulo llamado QuitarX
 2) pega el siguiente código

'Funciones API
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
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 SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

'constantes
'Window field offsets for GetWindowLong() and GetWindowWord()
Const GWL_WNDPROC = (-4)
Const GWL_HINSTANCE = (-6)
Const GWL_HWNDPARENT = (-Cool
Const GWL_STYLE = (-16)
Const GWL_EXSTYLE = (-20)
Const GWL_USERDATA = (-21)
Const GWL_ID = (-12)

' Window Styles
Const WS_OVERLAPPED = &H0&
Const WS_POPUP = &H80000000
Const WS_CHILD = &H40000000
Const WS_MINIMIZE = &H20000000
Const WS_VISIBLE = &H10000000
Const WS_DISABLED = &H8000000
Const WS_CLIPSIBLINGS = &H4000000
Const WS_CLIPCHILDREN = &H2000000
Const WS_MAXIMIZE = &H1000000
Const WS_CAPTION = &HC00000                  '  WS_BORDER Or WS_DLGFRAME
Const WS_BORDER = &H800000
Const WS_DLGFRAME = &H400000
Const WS_VSCROLL = &H200000
Const WS_HSCROLL = &H100000
Const WS_SYSMENU = &H80000
Const WS_THICKFRAME = &H40000
Const WS_GROUP = &H20000
Const WS_TABSTOP = &H10000

Const WS_MINIMIZEBOX = &H20000
Const WS_MAXIMIZEBOX = &H10000

Const WS_TILED = WS_OVERLAPPED
Const WS_ICONIC = WS_MINIMIZE
Const WS_SIZEBOX = WS_THICKFRAME
Const WS_OVERLAPPEDWINDOW = (WS_OVERLAPPED Or WS_CAPTION Or WS_SYSMENU Or WS_THICKFRAME Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX)
Const WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW
'*********************
Sub QuitabotonX(ByRef NombreForm As String)
          Dim hwnd As Long, hMenu As Long, lStyle As Long
10        hwnd = FindWindow("ThunderDFrame", NombreForm)
20        lStyle = GetWindowLong(hwnd, GWL_STYLE)
30        lStyle = lStyle And Not WS_SYSMENU
40        SetWindowLong hwnd, GWL_STYLE, lStyle

End Sub

Public Sub Example()
          Dim oProgress As New AVISO
          Dim style As Integer
          Dim windowCaption As String
          Dim endRow As Long
          Dim I As Long
10        style = 2                 ' Progress bar style (1 / 2).
          'windowCaption = "Example" ' Progress bar window caption.
20        endRow = 100000           ' Max value

          ' Progress bar initialization
30        oProgress.Initialize endRow, style, windowCaption
40        oProgress.Show 0          ' Shows the progress bar window

50        For I = 0 To endRow - 4   ' Dummy loop for this example
              '--
              ' <>
              '--
60            oProgress.Increase    ' Increases 1 unit the progress bar
70        Next
80        oProgress.Increase 4      ' Increases 4 units the progress bar
90        Unload oProgress          ' Unload progress bar window
End Sub
'>-----------------------------------------------------------------


 3) en tu formulario ingresar siguiente codigo
Private Sub UserForm_initialize() 'SE AUTO INICIA UNA FUNCION 
Call QuitabotonX('ACA ESCRIBE EL NOMBRE DE TU FORMULARIO.Caption) 'QUITA BOTON X
End Sub

LISTO si necesitan un ejemplo en libro solicítenlo con gusto lo subo.

Comento no se si es un error pero en mi libro cuando muevo el formulario se queda como una ventana colgada osea que no se borra de donde apareció inicialmente yo lo solucione colocando para que el formulario se abriera en un lugar especifico con la función de StarUpPosition del formulario.

Espero que les sirva feliz dia.

Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje [Página 1 de 1.]

Permisos de este foro:
No puedes responder a temas en este foro.