不行吧!这样windows的任务兰还在,怎么办?

解决方案 »

  1.   

    有时候,我们希望在我们的程序执行中,将任务栏隐藏,让桌面变得比较清爽,等到我们的程序执行完毕之后,再将任务栏显示出来,这时就要用到 SetWindowPos 这个 API 了!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 LongPrivate Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
    (ByVal lpClassName As String, ByVal lpWindowName As String) As LongConst SWP_HIDEWINDOW = &H80 ´隐藏视窗
    Const SWP_SHOWWINDOW = &H40 ´显示视窗 ´在程序中若要隐藏任务栏Private Sub Command1_Click()
    Dim Thwnd As Long
    Thwnd = FindWindow("Shell_traywnd", "")
    Call SetWindowPos(Thwnd, 0, 0, 0, 0, 0, SWP_HIDEWINDOW)
    End Sub´在程序中若要再显示任务栏Private Sub Command2_Click()
    Dim Thwnd As Long
    Thwnd = FindWindow("Shell_traywnd", "")
    Call SetWindowPos(Thwnd, 0, 0, 0, 0, 0, SWP_SHOWWINDOW)
    End Sub然后在将width和height设成和screen一样大
      

  2.   

    Const HWND_TOPMOST = -1
     Const HWND_NOTOPMOST = -2
     Const SWP_NOSIZE = 1
     Const SWP_NOMOVE = 2
     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 LongPrivate Sub Form_Load()
        SetWindowPos Me.hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE
         Me.Move 0, 0, Screen.Width, Screen.Height
    End Sub
      

  3.   

    Me.Move 0, 0, Screen.Width, Screen.Height
    已经是将窗口全屏了!之所以还有任务栏是因为任务栏是默认在最前的窗口,用SetWindowPos 函数将你的窗口放到它前面就行了