VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 如何读取 Windows 工作列的大小及位置?
发表评论(0)作者:不详, 平台:VB6.0+Win98, 阅读:7861, 日期:2001-09-16
如何读取 Windows 工作列的大小及位置?


作者: 王国荣 

  此一问题需呼叫 SHAppBarMessage API 函数,细节如下:

1. API 的宣告:
    Const ABM_GETTASKBARPOS = &H5
    Private Type RECT
            Left As Long
            Top As Long
            Right As Long
            Bottom As Long
    End Type
    Private Type APPBARDATA
        cbSize As Long
        hWnd As Long
        uCallbackMessage As Long
        uEdge As Long
        rc As RECT
        lParam As Long
    End Type

    注:如果以上的宣告放在「一般模组」底下, 应在 Const 之前加上 Public 保留字,
        并且将Private 保留字去掉。

2. 程式范例:

              Dim data As APPBARDATA
              data.cbSize = Len(data)
              Call SHAppBarMessage(ABM_GETTASKBARPOS, data)
              注释: data.rc.Left 等於工作列的左边界
              注释: data.rc.Top 等於工作列的上边界
              注释: data.rc.Right 等於工作列的右边界
              注释: data.rc.Bottom 等於工作列的下边界

              请注意以上求出之工作列位置及大小是以 pixel(像素) 为单位。