Skjul din taskbar for fuldskærms apps
Denne artikel vil forklare, hvordan du optimerer din computerskærm ved at bruge en makro til at skjule din proceslinje, mens et program vises i fuldskærmstilstand. Denne VBA hjælper dig med at dedikere en tastaturgenvej, så det er hurtigt og enkelt at gemme din proceslinje.
Makro til at skjule proceslinjen for fuldskærmsprogrammer
Du kan bruge denne makro til at programmere din computer til automatisk at skjule din proceslinje, når et program er i fuldskærmstilstand:'*************************'*** Lermite ******
'*** 06/03/2010 ******
'*************************
Mulighed Eksplicit
Offentlige Bascule Som Boolean
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName Som String, ByVal lpWindowName As String) Så Langt
Privat erklære funktion GetWindowPlacement Lib "user32" (ByVal hwnd så lang, lpwndpl som WINDOWPLACEMENT) så lang tid
Offentlig erklære funktion SHAppBarMessage Lib "shell32.dll" (ByVal dwMessage så lang, pData som AppBarData) Så lang
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd så lang, ByVal hWndInsertAfter så lang, ByVal X som _
Long, ByVal Y så lang, ByVal cx så lang, ByVal cy så lang, ByVal wFlags så lang) så lang
Privat Type POINTAPI
X så lang
Så længe
Afslut Type
Privat type RECT
Venstre så længe
Top så lang
Lige så længe
Bunden så lang
Afslut Type
Offentlig type AppBarData
cbSize så lang tid
så længe
uCallbackMessage så længe
uEdge så lang tid
rc som RECT
lParam så længe
Afslut Type
Private Type WINDOWPLACEMENT
Længde så lang
FLAGS As Long
Vis så lang tid
ptMinPosition som POINTAPI
ptMaxPosition som POINTAPI
rcNormalPosition som RECT
Afslut Type
Offentlig WinPlacement Som WINDOWPLACEMENT
Offentlig Const ABS_ALWAYSONTOP = & H2
Offentlig Const ABS_AUTOHIDE = & H1
Public Const ABM_GETSTATE = & H4
Public Const ABM_SETSTATE = & HA
'Trouver le hwnd de la barre des tâches
Privat funktion GetHwndBT () så lang
GetHwndBT = FindWindow ("shell_traywnd", "")
Slutfunktion
Privat Funktion BarData () Som Integer
Dim BarDt Som AppBarData
BarData = SHAppBarMessage (ABM_GETSTATE, BarDt)
Slutfunktion
'Retur sande si la barre des tâches er retable
Offentlig funktion BarMode () Som boolsk
Dim ret som helhed
ret = BarData ()
BarMode = (ret = ABS_AUTOHIDE + ABS_ALWAYSONTOP Eller ret = ABS_AUTOHIDE)
Slutfunktion
'Applique les propriétés à la barre des taches
'Mode = 0: voir la barre des tâche
'Mode = 1: cache la barre des tâches
Offentlige Sub ChangeTaskBar (tilstand så lang tid)
Dim BarDt Som AppBarData
Dim lige så lang
'Entrée des paramètres
BarDt.cbSize = Len (BarDt)
BarDt.hwnd = GetHwndBT
BarDt.lParam = Mode
'Applique
ret = SHAppBarMessage (ABM_SETSTATE, BarDt)
Hvis ret = 0 Så
Ring MsgBox ("Erreur lors de l'appel de SHAppBarMessage", vbCritical + vbOKOnly, "Erreur")
Afslut Hvis
Slutdel
Sub MaximizeAppli ()
Statisk a som boolsk
Statisk skifter som heltal
Hvis skifter = 0 Så
»Der er ikke noget svar på det
Changer = IIf (BarMode, 1, 2)
Afslut Hvis
a = ikke a
Hvis skifter = 2 Så
'La barre des tâches n'est pas retable, ont la retracte / Ressort
Ring ChangeTaskBar (Abs (a))
Afslut Hvis
'L'appli sera toujours maximizée plein écran.
Application.WindowState = IIf (a, xlMaximized, xlNormal)
Slutdel
Praktiske anvendelser til proceslinjen Makro
Den første brug af denne makro er som en tastaturgenvej . For at indstille dette skal du gå til dit bånd og klikke på Makro . Vælg makroen MaximizeAppli . Derefter skal du klikke på Valg og tildele et brev til genvejen.Den anden brug af denne makro er som en formularknap . Det kan du gøre ved at tildele MaximizeAppli- funktionen til en knap.
Denne makro kan også bruges med en knap på en UserForm . For at gøre dette skal brugerformen hedde noget der indeholder Show0 i knappens kode:
Privat Sub CommandButton1_Click ()MaximizeAppli
Dim T, L
'Exemple pour positionner le bouton aux environs des boutons système de l'appli.
L = Application.Left + Application.Width - UFbouton.Width - 60
T = Application.Top + 2
Me.Move L, T, 40, 14 'til adapter
Slutdel
Du kan downloade en demo-workbook-demo af denne makro her.