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

    Formulário sempre visível sem influenciar outros formulários

    sardao
    sardao
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 328
    Registrado : 12/03/2011

    Formulário sempre visível sem influenciar outros formulários  Empty Formulário sempre visível sem influenciar outros formulários

    Mensagem  sardao 29/12/2015, 21:13

    Boa noite,

    Estaria a tentar criar um género de bloco de notas que fosse aberto uma única vez e que ficasse sempre visível mesmo mexendo noutros formulários.
    há possibilidade?

    Obrigado
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    Formulário sempre visível sem influenciar outros formulários  Empty Re: Formulário sempre visível sem influenciar outros formulários

    Mensagem  Cláudio Machado 30/12/2015, 12:56

    Bom dia.

    Comigo funciona com este código. Tente e retorne.

    Crie um módulo e salve com o nome que quiser.

    Copie e cole este código.

    Após, no evento AoAbrir do seu form coloque Call MaximizeRestoredForm(Me)

    Espero que ajude,

    Código:

    Option Compare Database
    Option Explicit

    ' Obtido no artigo Q147152: Maximizing One Form Maximizes _
      All Forms (Access 7.0/97), na Knowledge Base da Microsoft:
    ' http://support.microsoft.com/support/kb/articles/q147/1/52.asp
     
    ' A alteração de Terry Kreft foi publicada no site The Access Web:
    ' http://www.mvps.org/access/api/api0022.htm

    Private Type RECT
        Left As Long
        Top As Long
        Right As Long
        Bottom As Long
    End Type

    Private Declare Function GetParent Lib "user32" _
     (ByVal hwnd As Long) As Long

    Private Declare Function GetClientRect Lib "user32" _
     (ByVal hwnd As Long, _
     lpRect As RECT) As Long

    Private Declare Function IsZoomed Lib "user32" (ByVal hwnd As Long) As Long

    Private Declare Function MoveWindow Lib "user32" (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 ShowWindow Lib "user32" (ByVal hwnd As Long, _
            ByVal nCmdShow As Long) As Long

    ' ShowWindows Constant
    Private Const SW_HIDE = 0
    Private Const SW_SHOWNORMAL = 1
    Private Const SW_SHOWMINIMIZED = 2
    Private Const SW_SHOWMAXIMIZED = 3

    Public Sub MaximizeRestoredForm(f As Form)
        Dim MDIRect As RECT
        Dim RetVal As Long

        ' Se o form estiver maximizado, restaura ao normal.
        If IsZoomed(f.hwnd) <> 0 Then
            RetVal = ShowWindow(f.hwnd, SW_SHOWNORMAL)
        End If

        ' Obtém coordenadas da tela e o tamanho da janela
        ' MDIClient do Access.
        'RetVal = GetWindowRect(GetParent(F.Hwnd), MDIRect)
        GetClientRect GetParent(f.hwnd), MDIRect 'linha alterada por Terry Kreft.
        ' Move o form para o canto superior-esquerdo
        ' da janela MDIClient (0,0) e o dimensiona para
        ' o mesmo tamanho da janela MDIClient, dando o repaint.
        'RetVal = MoveWindow(F.Hwnd, 0, 0, MDIRect.Right - _
        MDIRect.Left - 4, MDIRect.Bottom - MDIRect.Top - 4, True)
        MoveWindow f.hwnd, 0, 0, MDIRect.Right - MDIRect.Left, _
            MDIRect.Bottom - MDIRect.Top, True 'linha alterada por Terry Kreft.
    End Sub




    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha Formulário sempre visível sem influenciar outros formulários  90dssg para agradecer a dica que solucionou seu problema.
    sardao
    sardao
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 328
    Registrado : 12/03/2011

    Formulário sempre visível sem influenciar outros formulários  Empty Re: Formulário sempre visível sem influenciar outros formulários

    Mensagem  sardao 30/12/2015, 13:44

    Obrigado desde já Cláudio pela a ajuda.
    Esta tarde testarei e darei feedback.

    Obg
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    Formulário sempre visível sem influenciar outros formulários  Empty Re: Formulário sempre visível sem influenciar outros formulários

    Mensagem  Cláudio Machado 30/12/2015, 14:38

    Ok, aguardo retorno.


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha Formulário sempre visível sem influenciar outros formulários  90dssg para agradecer a dica que solucionou seu problema.
    sardao
    sardao
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 328
    Registrado : 12/03/2011

    Formulário sempre visível sem influenciar outros formulários  Empty Re: Formulário sempre visível sem influenciar outros formulários

    Mensagem  sardao 30/12/2015, 14:43

    Estava a tentar agora e esta a dar-me erro neste codigo "Call MaximizeRestoredForm(Me)"
    indica que a função não existe.
    sardao
    sardao
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 328
    Registrado : 12/03/2011

    Formulário sempre visível sem influenciar outros formulários  Empty Re: Formulário sempre visível sem influenciar outros formulários

    Mensagem  sardao 30/12/2015, 14:49

    Erro meu Very Happy
    Mas olha, estive a testar e não seria bem isto.
    Basicamente o que queria é que ele ficasse sobreposto a um formulário que abre como modulo, mas que de para mexer em simultâneo num e noutro, pois pelo que vi até hoje um formulário que abre como pop up e modulo activo fica com o foco total e não da para ir a outros forms.

    Obrigado
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    Formulário sempre visível sem influenciar outros formulários  Empty Re: Formulário sempre visível sem influenciar outros formulários

    Mensagem  Cláudio Machado 30/12/2015, 15:04

    Realmente isso ai acho que fica complicado.
    Porquê se escolher como Janela Restrita você mexe em um e outro não. Sendo PoUp a mesma coisa.
    Só se for form e subform ou dois form dentro de um.

    Infelizmente não dá pra ajudar mais do que isso.



    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha Formulário sempre visível sem influenciar outros formulários  90dssg para agradecer a dica que solucionou seu problema.
    sardao
    sardao
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 328
    Registrado : 12/03/2011

    Formulário sempre visível sem influenciar outros formulários  Empty Re: Formulário sempre visível sem influenciar outros formulários

    Mensagem  sardao 30/12/2015, 15:05

    Agradeço na mesma Cláudio,

    Vou ficar a aguardar na mesma para ver se alguém sabe como fazer. Very Happy
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    Formulário sempre visível sem influenciar outros formulários  Empty Re: Formulário sempre visível sem influenciar outros formulários

    Mensagem  Cláudio Machado 30/12/2015, 16:01

    Ok, boa sorte e feliz ano novo.


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha Formulário sempre visível sem influenciar outros formulários  90dssg para agradecer a dica que solucionou seu problema.

    Conteúdo patrocinado


    Formulário sempre visível sem influenciar outros formulários  Empty Re: Formulário sempre visível sem influenciar outros formulários

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 27/4/2024, 14:54