다음을 통해 공유


ITaskbarList3::ThumbBarUpdateButtons 메서드(shobjidl_core.h)

창의 현재 상태에 필요한 대로 축소판 그림 도구 모음에서 단추를 표시, 사용, 사용 안 함 또는 숨깁니다. 썸네일 도구 모음은 작업 표시줄 단추 플라이아웃에 있는 창의 축소판 그림 이미지에 포함된 도구 모음입니다.

구문

HRESULT ThumbBarUpdateButtons(
  [in] HWND          hwnd,
  [in] UINT          cButtons,
  [in] LPTHUMBBUTTON pButton
);

매개 변수

[in] hwnd

형식: HWND

썸네일 표현에 도구 모음이 포함된 창의 핸들입니다.

[in] cButtons

형식: UINT

pButton이 가리키는 배열에 정의된 단추 수입니다. 허용되는 최대 단추 수는 7개입니다. 이 배열에는 업데이트되는 기존 단추를 나타내는 구조만 포함됩니다.

[in] pButton

형식: LPTHUMBBUTTON

THUMBBUTTON 구조체 배열에 대한 포인터입니다. 각 THUMBBUTTON 은 개별 단추를 정의합니다. 단추가 이미 있는 경우( iId 값이 이미 정의됨) 기존 단추가 구조에 제공된 정보로 업데이트됩니다.

반환 값

형식: HRESULT

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

썸네일을 표시할 공간이 제한되어 있을 뿐만 아니라 표시할 축소판 그림의 수가 지속적으로 변경되기 때문에 애플리케이션은 특정 도구 모음 크기를 보장하지 않습니다. 표시 공간이 부족한 경우 필요에 따라 도구 모음의 단추가 오른쪽에서 왼쪽으로 잘립니다. 따라서 애플리케이션은 단추와 연결된 명령의 우선 순위를 지정하여 우선 순위가 가장 높은 명령이 왼쪽에 있으므로 잘릴 가능성이 가장 없도록 해야 합니다.

축소판 그림 도구 모음은 썸네일이 작업 표시줄에 표시되는 경우에만 표시됩니다. instance 경우 작업 표시줄 단추가 축소판 그림을 표시할 공간이 있는 것보다 열린 창이 더 많은 그룹을 나타내는 경우 UI는 축소판 그림이 아닌 레거시 메뉴로 되돌아갑니다.

예제

다음 예제에서는 ThumbBarUpdateButtons 를 사용하여 확장 작업 표시줄의 축소판 그림 도구 모음에 있는 기존 단추의 텍스트와 이미지를 변경하는 방법을 보여 줍니다.

HRESULT UpdateThumbarButton(HWND hwnd)
{
    // Define a single structure for the button to update. The ID is that
    // of an existing button, so the other information (bitmap index and 
    // tooltip) overwrites the existing values, updating the button.
    THUMBBUTON thbButton;
    thbButton.dwMask = THB_BITMAP | THB_TOOLTIP;
    thbButtons[0].iId = 1;
    thbButton.iBitmap = 3;
    thbButton.pszTip = TEXT("Different Text");
    
    // Create an instance of ITaskbarList3
    ITaskBarList3 *ptbl;
    HRESULT hr = CoCreateInstance(CLSID_TaskbarList, 
                                  NULL, 
                                  CLSCTX_INPROC_SERVER, 
                                  IID_PPV_ARGS(&ptbl);

    if (SUCCEEDED(hr))
    {
        // Update the toolbar. In this case, only the single button is updated.
        hr = ptbl->ThumbBarUpdateButtons(hwnd, 1, &thbButton);
        ptbl->Release();
    }
    return hr;
}

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 shobjidl_core.h(Shobjidl.h 포함)
라이브러리 Explorerframe.lib
DLL Explorerframe.dll

추가 정보

ITaskbarList

ITaskbarList2

ITaskbarList3

ITaskbarList3::ThumbBarAddButtons

ITaskbarList3::ThumbBarSetImageList

작업 표시줄 확장