USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Desabilitar Botao Maximizar em MDI
Elieser Topassi
Pontos: 2843 Pontos: 2843
SÃO JOSÉ DO RIO PRETO
SP - BRASIL
Postada em 16/08/2006 14:04 hs            
Pessoal,
eu tinha esse codigo, mas não to achando...
Alguem pode me passar a API que desabilita o botao Maxinizar/Restaurar do formulario MDI ???


Elieser Carlos Topassi
Analista de Sistemas - Desenvolvedor VB/ASP/.Net

e-mail/msn:
elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil
_____________________________________________________
Emoções "O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)

     
AAA
não registrado
Postada em 17/08/2006 00:26 hs   
Acho que é isto
Dim lWnd As Long
 lWnd = GetWindowLong(Me.hwnd, GWL_STYLE)
'Tira o botão de minimizar
  lWnd = lWnd And Not (WS_MINIMIZEBOX)
'Tira o botão de maximizar
 lWnd = lWnd And Not (WS_MAXIMIZEBOX)
 lWnd = SetWindowLong(Me.hwnd, GWL_STYLE, lWnd)
     
Elieser Topassi
Pontos: 2843 Pontos: 2843
SÃO JOSÉ DO RIO PRETO
SP - BRASIL
Postada em 17/08/2006 17:26 hs            
Acabei de testar esse codigo ai...
nao funcionou nao..........
me lembro que o codigo que eu tinha não era assim nao...


Elieser Carlos Topassi
Analista de Sistemas - Desenvolvedor VB/ASP/.Net

e-mail/msn:
elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil
_____________________________________________________
Emoções "O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)

     
AAA
não registrado
Postada em 18/08/2006 01:03 hs   
Me desculpe a falha, mandei metado do código.
em um módulo BAS coloque o código abaixo:
'Bloquear controles max e min do mdi
Public Declare Function SetWindowLong Lib "user32" _
        Alias "SetWindowLongA" (ByVal hwnd As Long, _
        ByVal nIndex As Long, ByVal dwNewLong As _
        Long) As Long
Public Declare Function GetWindowLong Lib "user32" _
        Alias "GetWindowLongA" (ByVal hwnd As Long, _
        ByVal nIndex As Long) As Long
 
Public Const WS_MINIMIZEBOX As Long = &H20000
Public Const WS_MAXIMIZEBOX As Long = &H10000
Public Const GWL_STYLE As Long = (-16)
 
No evento load do MDI
 
Dim lWnd As Long
 lWnd = GetWindowLong(Me.hwnd, GWL_STYLE)
'Tira o botão de minimizar
  lWnd = lWnd And Not (WS_MINIMIZEBOX)
'Tira o botão de maximizar
 lWnd = lWnd And Not (WS_MAXIMIZEBOX)
 lWnd = SetWindowLong(Me.hwnd, GWL_STYLE, lWnd)
 
Acho que agora vai dar certo.
     
Alfterra
Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 18/08/2006 10:10 hs            

'A API abaixo trava todas as opções de um form
'ou só as que você desejar que ele trave
'OBS: esta API também é válida para forms MDI
Public Enum OpcoesForm
    Maximizar = 1
    Tamanho = 2
    Mover = 3
    Minimizar = 4
    Restaurar = 5
    Fechar = 6
End Enum
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Const SW_SHOWNORMAL = 1
 
Private Const SC_MAXIMIZE = &HF030
Private Const SC_MINIMIZE = &HF020
Private Const SC_MOVE = &HF010
Private Const SC_RESTORE = &HF120
Private Const SC_SIZE = &HF000
Private Const SC_CLOSE = &HF060
Private Const MF_BYCOMMAND = 0
 
Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function DeleteMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
'Para travar as opções use esta função
Public Sub TravarOpcoes(Opcao As OpcoesForm, gForm As Form)
    Dim hMenu As Long
    hMenu = GetSystemMenu(gForm.hwnd, 0)
    Select Case Opcao
        Case 1
            Call DeleteMenu(hMenu, SC_MAXIMIZE, MF_BYCOMMAND) 'trava o Maximixar
        Case 2
            Call DeleteMenu(hMenu, SC_SIZE, MF_BYCOMMAND) 'trava o tamanho
        Case 3
            Call DeleteMenu(hMenu, SC_MOVE, MF_BYCOMMAND) 'trava o mover
        Case 4
            Call DeleteMenu(hMenu, SC_MINIMIZE, MF_BYCOMMAND) 'trava o minimizar
        Case 5
            Call DeleteMenu(hMenu, SC_RESTORE, MF_BYCOMMAND) 'trava o restaurar
        Case 6
            Call DeleteMenu(hMenu, SC_CLOSE, MF_BYCOMMAND) 'trava o fechar ( X )
     End Select
End Sub
 
'chamar
'===========================================================
' para desabilitar as opções do form faça o seguinte
'Private Sub Form_Load() _
Call TravarOpcoes(Fechar, Me) _
Call TravarOpcoes(Maximizar, Me) _
Call TravarOpcoes(Minimizar, Me) _
Call TravarOpcoes(Mover, Me) _
Call TravarOpcoes(Restaurar, Me) _
Call TravarOpcoes(Tamanho, Me) _
End Sub
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página