MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


2 participantes

    Retirar Clique duplo para Maximizar a Janela do Access

    FabioLeitao
    FabioLeitao
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 21/12/2016

    Retirar Clique duplo para Maximizar a Janela do Access Empty Retirar Clique duplo para Maximizar a Janela do Access

    Mensagem  FabioLeitao 20/11/2017, 18:13

    Boa Tarde colegas,

    Estou com o seguinte problema.

    Tenho um banco que utiliza Ribbons xml no Access e preciso remover o Maximizar do Access, NÂO é do Formulário e sim do Access mesmo.

    Utilizando as orientações do JPaulo com o Exemplo dele "Retira Botões" https://www.maximoaccess.com/t1098-retira-todos-os-botoes-do-banco?highlight=Retira

    Funcionou até certo ponto, o botão de Maximizar e Minimizar do Access foi removido, porem se o usuario der um DUPLO CLIQUE na janela do Access o mesmo Maximiza o aplicativo.

    Gostaria de saber, até do Sr JPaulo se o mesmo puder, como adptar o modulo para que também fique bloqueado esta outra função ou se existe algum outro tipo de opção que eu possa estudar para resolver o problema.
    bigfill
    bigfill
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 477
    Registrado : 27/03/2015

    Retirar Clique duplo para Maximizar a Janela do Access Empty Re: Retirar Clique duplo para Maximizar a Janela do Access

    Mensagem  bigfill 20/11/2017, 18:29

    FabioLeitao, Boa tarde!

    Tenho esse modelo de código, mais nunca usei.
    Caso não resolva seu problema possa te da uma luz.

    Código:
    'Janela sempre Maximizada
    Option Compare Database

    Private Const GWL_STYLE = (-16)
    Private Const WS_MAXIMIZEBOX = &H10000
    Private Const WS_THICKFRAME = &H40000

    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
    Function MveWindow() As Long

    Dim hMenu As Long
    Dim lStyle As Long
    Dim Lhwnd As Long
    Lhwnd = Access.Application.hWndAccessApp

    'disable MAXIMIZE button
    lStyle = GetWindowLong(Lhwnd, GWL_STYLE)
    lStyle = lStyle And Not WS_MAXIMIZEBOX
    Call SetWindowLong(Lhwnd, GWL_STYLE, lStyle)

    'uncomment the following block if you need to make form not resizeable
    lStyle = GetWindowLong(Lhwnd, GWL_STYLE)
    lStyle = lStyle And Not WS_THICKFRAME
    Call SetWindowLong(Lhwnd, GWL_STYLE, lStyle)


    End Function
    FabioLeitao
    FabioLeitao
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 21
    Registrado : 21/12/2016

    Retirar Clique duplo para Maximizar a Janela do Access Empty Re: Retirar Clique duplo para Maximizar a Janela do Access

    Mensagem  FabioLeitao 21/11/2017, 18:25

    Boa tarde,

    Estou utilizando um código parecido.

    Porem esse que você sugeriu ele bloqueia o MAXIMIZAR do Formulário e não do Access em si.

    Obrigado pela sugestão vou ver se tem algo no código que posso adaptar.

    O que precisava mesmo era bloquear o Duplo Clique de Maximizar a Janela.

    Código fornecido por: JPaulo escreveu:

    Código:
    Option Compare Database

    Private Const GWL_STYLE = (-16)
    Private Const WS_CAPTION = &HC00000
    Private Const WS_MAXIMIZEBOX = &H10000
    Private Const WS_SYSMENU = &H80000
    Private Const SWP_NOSIZE = &H1
    Private Const SWP_NOMOVE = &H2
    Private Const SWP_NOZORDER = &H4
    Public Const SWP_FRAMECHANGED = &H20


    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 SetWindowPos _
    Lib "user32" ( _
      ByVal hwnd As Long, _
      ByVal hWndInsertAfter As Long, _
      ByVal X As Long, _
      ByVal Y As Long, _
      ByVal cx As Long, _
      ByVal cy As Long, _
      ByVal wFlags As Long) As Long


    Public Function EscondeBotoes(Show As Boolean) As Long
      Dim Janela As Long
      Dim AtribueIndex As Long
      Dim AtribueNovoLongo As Long
      Dim AtribueLongo As Long

      Janela = hWndAccessApp
      AtribueIndex = GWL_STYLE

        Const wFlags = SWP_NOSIZE + SWP_NOZORDER + SWP_FRAMECHANGED + SWP_NOMOVE
        Const FLAGS_COMBI = WS_MAXIMIZEBOX Or WS_SYSMENU

      AtribueLongo = GetWindowLong(Janela, AtribueIndex)

        If Show Then
          AtribueNovoLongo = (AtribueLongo Or FLAGS_COMBI)
        Else
          AtribueNovoLongo = (AtribueLongo And Not FLAGS_COMBI)
        End If

      Call SetWindowLong(Janela, AtribueIndex, AtribueNovoLongo)
      Call SetWindowPos(Janela, 0&, 0&, 0&, 0&, 0&, wFlags)

    End Function

    Esse acima bloqueia o menu Maximizar e o Menu do Access, eu só removi o WS_MINIMIZEBOX por que eu preciso do botão minimizar do Access.

    Conteúdo patrocinado


    Retirar Clique duplo para Maximizar a Janela do Access Empty Re: Retirar Clique duplo para Maximizar a Janela do Access

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 8/11/2024, 03:17