Nabídka portálu se při zobrazení článku přesouvá na konec pravého sloupce nabídek.
ShowInTaskbar za běhu aplikace |
Autor: Kočí Marek
| Zdroj:
| Vytvořeno: 10.1.2003
| Publikováno: 10.1.2003
| Čtenářů: 2050
| Unikátních: 2022
|
Přepínání zda zobrazovat/nezobrazovat formulář na taskbaru Windows za běhu aplikace pomocí API funkcí
Potřebujete za běhu své aplikace přepínat formulář, který se
zobrazuje na taskbaru, nebo prostě jen občas vypnout nebo zapnout zobrazení
dle potřeby.
Ve VB je standardně funkce formuláře ShowInTaskBar, ale ta funguje jen v
design módu a za běhu je nepoužitelná. Přes Windows API to však samozřejmě jde.
Ukázka
-
Vytvořte ve VB Standard EXE projekt.
- Na formulář vložte tlačítko (Command1)
- Vložte následující kód:
Option Explicit
Private Const WS_EX_APPWINDOW = &H40000
Private Const GWL_STYLE = (-16)
Private Const GWL_EXSTYLE = (-20)
Private Const SW_HIDE = 0
Private Const SW_NORMAL = 1
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 FindWindow _
Lib "user32" _
Alias "FindWindowA" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) _
As Long
Private Declare Function ShowWindow _
Lib "user32" _
(ByVal hwnd As Long, _
ByVal nCmdShow As Long) _
As Long
Sub Show_Hide_TaskBar(ByRef MyWindow As Object)
Dim WindowLong As Long
ShowWindow MyWindow.hwnd, _
SW_HIDE
WindowLong = GetWindowLong(MyWindow.hwnd, _
GWL_EXSTYLE)
SetWindowLong MyWindow.hwnd, _
GWL_EXSTYLE, _
WindowLong Xor WS_EX_APPWINDOW
ShowWindow MyWindow.hwnd, SW_NORMAL
End Sub
Private Sub Command1_Click()
Show_Hide_TaskBar Me
End Sub
Máte hotovo, po prvním stisku tlačítka formulář z taskbaru zmizí, při druhém
stisknutí se objeví.
Jak jednoduché, doporučuji to zapouzdřit do modulu a používat pro všechny
formuláře v aplikaci.
|