Esconder o Access
Nota importante: para ter acesso aos vídeos e arquivos exemplos deste site, adquira um dos planos apresentados abaixo. Você pode comprar em até 5x no Cartão de Crédito.
Veja como comprar e saiba mais sobre o material oferecido, clicando aqui.
Com a combinação de algumas APIs é possível definir o grau de transparência do Access e/ou seus objetos. O grau de transparência tem um range que vai de 0 a 255. O valor zero(0) torna o aplicativo totalmente oculto e 255 totalmente visível. No código abaixo utilizei apenas os valores 0 e 255, mas nada impede que seja feita uma pequena alteração e outros valores sejam testados.
Nota: As APIs sofreram alterações na sua escrita a partir da versão 2010 do Access. Veja todos os detalhes desta mudança neste meu artigo. Adaptei o código abaixo para atender as diversas versões.
Option Compare Database
#If VBA7 Then
'-------------------------------------------
' versões 2010 e 2013 - 32 e 64 bits
'-------------------------------------------- Declare PtrSafe Function SetLayeredWindowAttributes Lib "user32" _
(ByVal hwnd As LongPtr,ByVal crKey As Long,ByVal bAlpha As Byte,ByVal dwFlags As Long) As Long
Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
(ByVal hwnd As LongPtr, ByVal nIndex As Long) As Long
Declare PtrSafe Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
(ByVal hwnd As LongPtr, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
#Else
'-------------------
'versão 2007
'------------------ Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
(ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
(ByVal hwnd As Long, ByVal nIndex As Long) As Long
Declare Function SetLayeredWindowAttributes Lib "user32" _
(ByVal hwnd As Long,ByVal crKey As Long,ByVal bAlpha As Byte,ByVal dwFlags As Long) As Long
#End If 'Constantes Private Const GWL_EXSTYLE = (-20) Private Const WS_EX_LAYERED = &H80000 Private Const LWA_ALPHA = &H2
------------------------------------------------------------------------------------------------
Private Function fncOcultarAccess(Ocultar As Boolean) As Boolean Dim lngHwnd As Long Dim bytNivel As Byte lngHwnd = Application.hWndAccessApp bytNivel = IIf(Ocultar, 0, 255) SetWindowLong lngHwnd, GWL_EXSTYLE, GetWindowLong(lngHwnd, GWL_EXSTYLE) Or WS_EX_LAYERED SetLayeredWindowAttributes lngHwnd, 0, bytNivel, LWA_ALPHA fncOcultarAccess = True End Function
Esconder o Access: Call fncOcultarAccess(True)
Retornar a visualizar o Access: Call fncOcultarAccess(false)
Bom estudo!
Os dez artigos mais visitados
MontaRibbons v.7.0 - Assistente completo para criar ribbons no Access
Vídeo - Controle personalizado de Acesso de Usuários
Vídeo - Aprenda sobre filtragens
Vídeo - Segurança máxima, usando o OPEN
Uma ajuda para quem está começando um negócio ou um projeto
Integrando o Access com Servidor MySQL - Introdução
Desabilitando a faixa(ribbon) superior do Access
Vídeo - Programação de relatórios - Parte 1
Como carregar o seu menu sem que ele vá para lista de suplementos
Vídeo - Criando Ribbons parte 1 - Conhecendo a estrutura Xml
Não há comentário |