다음을 통해 공유


CToolBar 수업

비트맵 단추의 행과 구분 기호(선택 사항)가 있는 컨트롤 막대입니다.

구문

class CToolBar : public CControlBar

멤버

공용 생성자

속성 설명
CToolBar::CToolBar CToolBar 개체를 생성합니다.

공용 메서드

이름 설명
CToolBar::CommandToIndex 지정된 명령 ID를 사용하여 단추의 인덱스 값을 반환합니다.
CToolBar::Create Windows 도구 모음을 만들어 개체에 CToolBar 연결합니다.
CToolBar::CreateEx 포함된 CToolBarCtrl 개체에 CToolBar 대한 추가 스타일을 사용하여 개체를 만듭니다.
CToolBar::GetButtonInfo 단추의 ID, 스타일 및 이미지 번호를 검색합니다.
CToolBar::GetButtonStyle 단추의 스타일을 검색합니다.
CToolBar::GetButtonText 단추에 표시할 텍스트를 검색합니다.
CToolBar::GetItemID 지정된 인덱스에서 단추 또는 구분 기호의 명령 ID를 반환합니다.
CToolBar::GetItemRect 지정된 인덱스에 있는 항목의 표시 사각형을 검색합니다.
CToolBar::GetToolBarCtrl 기본 공용 컨트롤에 직접 액세스할 수 있습니다.
CToolBar::LoadBitmap 비트맵 단추 이미지가 포함된 비트맵을 로드합니다.
CToolBar::LoadToolBar 리소스 편집기를 사용하여 만든 도구 모음 리소스를 로드합니다.
CToolBar::SetBitmap 비트맵 이미지를 설정합니다.
CToolBar::SetButtonInfo 단추의 ID, 스타일 및 이미지 번호를 설정합니다.
CToolBar::SetButtons 비트맵 내에서 단추 스타일 및 단추 이미지의 인덱스 설정
CToolBar::SetButtonStyle 단추의 스타일을 설정합니다.
CToolBar::SetButtonText 단추에 표시할 텍스트를 설정합니다.
CToolBar::SetHeight 도구 모음의 높이를 설정합니다.
CToolBar::SetSizes 단추 및 해당 비트맵의 크기를 설정합니다.

설명

단추는 누름 단추, 확인란 단추 또는 라디오 단추처럼 작동할 수 있습니다. CToolBar 개체는 일반적으로 클래스 CFrameWnd 또는 CMDIFrameWnd.에서 파생된 프레임 창 개체의 포함 멤버입니다.

CToolBar::GetToolBarCtrlMFC 4.0의 새로운 멤버 함수인 이 함수를 사용하면 도구 모음 사용자 지정 및 추가 기능에 대한 Windows 공용 컨트롤의 지원을 활용할 수 있습니다. CToolBar 멤버 함수는 Windows 공용 컨트롤의 대부분의 기능을 제공합니다. 그러나 호출 GetToolBarCtrl할 때 도구 모음에 Windows 95/98 도구 모음의 특성을 더 많이 제공할 수 있습니다. 호출 GetToolBarCtrl하면 개체에 대한 참조가 CToolBarCtrl 반환됩니다. Windows 공용 컨트롤을 사용하여 도구 모음을 디자인하는 방법에 대한 자세한 내용은 참조 CToolBarCtrl 하세요. 일반적인 컨트롤에 대한 자세한 내용은 Windows SDK의 공용 컨트롤을 참조하세요.

Visual C++는 도구 모음을 만드는 두 가지 방법을 제공합니다. 리소스 편집기를 사용하여 도구 모음 리소스를 만들려면 다음 단계를 수행합니다.

  1. 도구 모음 리소스를 만듭니다.

  2. CToolBar 개체를 생성합니다.

  3. Create (또는CreateEx) 함수를 호출하여 Windows 도구 모음을 만들고 개체에 CToolBar 연결합니다.

  4. 도구 모음 리소스를 로드하기 위한 호출 LoadToolBar 입니다.

그렇지 않으면 다음 단계를 따릅니다.

  1. CToolBar 개체를 생성합니다.

  2. Create (또는CreateEx) 함수를 호출하여 Windows 도구 모음을 만들고 개체에 CToolBar 연결합니다.

  3. 도구 모음 단추 이미지가 포함된 비트맵을 로드하려면 호출 LoadBitmap 합니다.

  4. 단추 스타일을 설정하고 각 단추를 비트맵의 이미지와 연결하려면 호출 SetButtons 합니다.

도구 모음의 모든 단추 이미지는 각 단추에 대해 하나의 이미지를 포함해야 하는 하나의 비트맵에서 가져옵니다. 모든 이미지는 크기가 같아야 합니다. 기본값은 너비가 16픽셀이고 높이가 15픽셀입니다. 이미지는 비트맵에서 나란히 있어야 합니다.

이 함수는 SetButtons 컨트롤 ID의 배열과 배열의 요소 수를 지정하는 정수에 대한 포인터를 사용합니다. 함수는 각 단추의 ID를 배열의 해당 요소 값으로 설정하고 각 단추에 이미지 인덱스를 할당하여 비트맵에서 단추 이미지의 위치를 지정합니다. 배열 요소에 값 ID_SEPARATOR이 있으면 이미지 인덱스가 할당되지 않습니다.

비트맵의 이미지 순서는 일반적으로 화면에 그려지는 순서이지만 이 함수를 사용하여 SetButtonInfo 이미지 순서와 그리기 순서 간의 관계를 변경할 수 있습니다.

도구 모음의 모든 단추는 크기가 동일합니다. 기본값은 소프트웨어 디자인에 대한 Windows 인터페이스 지침에 따라 24 x 22 픽셀입니다. 이미지와 단추 차원 사이의 추가 공간은 이미지 주위의 테두리를 형성하는 데 사용됩니다.

각 단추에는 하나의 이미지가 있습니다. 해당 이미지에서 다양한 단추 상태 및 스타일(누름, 위쪽, 아래쪽, 사용 안 함, 사용 안 함 및 확정되지 않음)이 생성됩니다. 비트맵은 모든 색일 수 있지만 검은색 이미지와 회색 음영으로 최상의 결과를 얻을 수 있습니다.

Warning

CToolBar 는 최대 16가지 색의 비트맵을 지원합니다. 도구 모음 편집기에 이미지를 로드하면 필요한 경우 Visual Studio에서 이미지를 16색 비트맵으로 자동으로 변환하고 이미지가 변환된 경우 경고 메시지를 표시합니다. 16개 이상의 색이 있는 이미지를 사용하는 경우(외부 편집기를 사용하여 이미지 편집) 애플리케이션이 예기치 않게 동작할 수 있습니다.

도구 모음 단추는 기본적으로 푸시버튼을 모방합니다. 그러나 도구 모음 단추는 확인란 단추 또는 라디오 단추를 모방할 수도 있습니다. 확인란 단추에는 선택됨, 선택 취소 및 확정되지 않은 세 가지 상태가 있습니다. 라디오 단추에는 선택 및 선택 취소의 두 가지 상태만 있습니다.

배열을 가리키지 않고 개별 단추 또는 구분 기호 스타일을 설정하려면 스타일을 검색한 다음 대신 호출 GetButtonStyle SetButtonStyle SetButtons합니다. SetButtonStyle 는 런타임에 단추의 스타일을 변경하려는 경우에 가장 유용합니다.

단추에 표시할 텍스트를 할당하려면 단추에 표시할 텍스트를 검색 GetButtonText 한 다음, 호출 SetButtonText 하여 텍스트를 설정합니다.

확인란 단추를 만들려면 스타일을 TBBS_CHECKBOX 할당하거나 처리기에서 개체의 SetCheck 멤버 함수를 ON_UPDATE_COMMAND_UI 사용합니다CCmdUI. 호출 SetCheck 하면 푸시버튼이 확인란 단추로 바뀝니다. 선택하지 않은 경우 0, 선택된 경우 1, 확정되지 않은 경우 2의 인수를 전달 SetCheck 합니다.

라디오 단추를 만들려면 처리기에서 개체의 SetRadio 멤버 함수를 ON_UPDATE_COMMAND_UI 호출 CCmdUI 합니다. 선택하지 않은 경우 0 또는 0이 아닌 인수를 전달 SetRadio 합니다. 라디오 그룹의 상호 배타적 동작을 제공하려면 그룹의 모든 단추에 대한 처리기가 있어야 합니다 ON_UPDATE_COMMAND_UI .

사용에 CToolBar대한 자세한 내용은 MFC 도구 모음 구현기술 참고 31: 컨트롤 막대 문서를 참조하세요.

상속 계층 구조

CObject

CCmdTarget

CWnd

CControlBar

CToolBar

요구 사항

머리글: afxext.h

CToolBar::CommandToIndex

이 멤버 함수는 명령 ID가 일치하는 위치 0부터 시작하여 첫 번째 도구 모음 단추의 인덱스가 반환됩니다 nIDFind.

int CommandToIndex(UINT nIDFind) const;

매개 변수

nIDFind
도구 모음 단추의 명령 ID입니다.

Return Value

단추의 인덱스이거나, 단추에 지정된 명령 ID가 없는 경우 -1입니다.

CToolBar::Create

이 멤버 함수는 Windows 도구 모음(자식 창)을 만들고 개체와 연결 CToolBar 합니다.

virtual BOOL Create(
    CWnd* pParentWnd,
    DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_TOP,
    UINT nID = AFX_IDW_TOOLBAR);

매개 변수

pParentWnd
도구 모음의 부모 창에 대한 포인터입니다.

dwStyle
도구 모음 스타일입니다. 지원되는 추가 도구 모음 스타일은 다음과 같습니다.

  • CBRS_TOP 컨트롤 막대는 프레임 창의 맨 위에 있습니다.

  • CBRS_BOTTOM 컨트롤 막대는 프레임 창의 맨 아래에 있습니다.

  • CBRS_NOALIGN 컨트롤 막대는 부모 크기가 조정될 때 위치가 조정되지 않습니다.

  • CBRS_TOOLTIPS 컨트롤 막대에 도구 팁이 표시됩니다.

  • CBRS_SIZE_DYNAMIC 컨트롤 막대가 동적입니다.

  • CBRS_SIZE_FIXED 컨트롤 막대가 고정되어 있습니다.

  • CBRS_FLOATING 컨트롤 막대가 부동입니다.

  • CBRS_FLYBY 상태 표시줄에 단추에 대한 정보가 표시됩니다.

  • CBRS_HIDE_INPLACE 컨트롤 막대가 사용자에게 표시되지 않습니다.

nID
도구 모음의 자식 창 ID입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

또한 도구 모음 높이를 기본값으로 설정합니다.

예시

// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.

//This example creates a dockable toolbar.
if (!m_wndToolBar.Create(this) ||
   !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
   TRACE0("Failed to create toolbar\n");
   return -1;      // fail to create
}

//Make the toolbar dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);

CToolBar::CreateEx

이 함수를 호출하여 Windows 도구 모음(자식 창)을 만들고 개체와 CToolBar 연결합니다.

virtual BOOL CreateEx(
    CWnd* pParentWnd,
    DWORD dwCtrlStyle = TBSTYLE_FLAT,
    DWORD dwStyle = WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP,
    CRect rcBorders = CRect(
    0,
    0,
    0,
    0),
    UINT nID = AFX_IDW_TOOLBAR);

매개 변수

pParentWnd
도구 모음의 부모 창에 대한 포인터입니다.

dwCtrlStyle
포함된 CToolBarCtrl 개체를 만들기 위한 추가 스타일입니다. 기본적으로 이 값은 TBSTYLE_FLAT로 설정되어 있습니다. 도구 모음 스타일의 전체 목록은 다음을 참조하세요 dwStyle.

dwStyle
도구 모음 스타일입니다. 적절한 스타일 목록은 Windows SDK의 도구 모음 컨트롤 및 단추 스타일을 참조하세요.

rcBorders
CRect 도구 모음 창 테두리의 너비를 정의하는 개체입니다. 이러한 테두리는 기본적으로 0,0,0,0으로 설정되어 테두리가 없는 도구 모음 창이 생성됩니다.

nID
도구 모음의 자식 창 ID입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

또한 도구 모음 높이를 기본값으로 설정합니다.

포함된 도구 모음 컨트롤을 Create만드는 동안 특정 스타일이 있어야 하는 경우 대신 사용합니다CreateEx. 예를 들어 Internet Explorer 4 도구 모음과 유사한 도구 모음을 만들도록 TBSTYLE_FLAT | TBSTYLE_TRANSPARENT 설정합니다dwCtrlStyle.

예시

// This example demonstrates CToolBar::CreateEx by creating a 
// toolbar as part of a child frame window. It also calls the 
// LoadToolbar and EnableDocking functions
int CChildFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
   if (CMDIChildWnd::OnCreate(lpCreateStruct) == -1)
      return -1;

   if (!m_wndMyToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
      | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
      !m_wndMyToolBar.LoadToolBar(IDR_MYTOOLBAR))
   {
      TRACE0("Failed to create toolbar\n");
      return -1;      // fail to create
   }

   m_wndMyToolBar.EnableDocking(CBRS_ALIGN_ANY);
   EnableDocking(CBRS_ALIGN_ANY);
   DockControlBar(&m_wndMyToolBar);

   return 0;
}

CToolBar::CToolBar

이 멤버 함수는 개체를 CToolBar 생성하고 기본 크기를 설정합니다.

CToolBar();

설명

멤버 함수를 Create 호출하여 도구 모음 창을 만듭니다.

CToolBar::GetButtonInfo

이 멤버 함수는 지정된 위치에서 nIndex도구 모음 단추 또는 구분 기호의 컨트롤 ID, 스타일 및 이미지 인덱스를 검색합니다.

void GetButtonInfo(
    int nIndex,
    UINT& nID,
    UINT& nStyle,
    int& iImage) const;

매개 변수

nIndex
정보를 검색할 도구 모음 단추 또는 구분 기호의 인덱스입니다.

nID
단추의 명령 ID로 설정된 UINT에 대한 참조입니다.

nStyle
단추의 스타일로 설정된 UINT에 대한 참조입니다.

iImage
비트맵 내에서 단추 이미지의 인덱스로 설정된 정수에 대한 참조입니다.

설명

이러한 값은 , nStyleiImage.에서 참조하는 변수에 nID할당됩니다. 이미지 인덱스는 모든 도구 모음 단추에 대한 이미지를 포함하는 비트맵 내의 이미지 위치입니다. 첫 번째 이미지는 위치 0에 있습니다.

구분 기호 iImage 를 지정하는 경우 nIndex 구분 기호 너비(픽셀)로 설정됩니다.

CToolBar::GetButtonStyle

이 멤버 함수를 호출하여 도구 모음에서 단추 또는 구분 기호의 스타일을 검색합니다.

UINT GetButtonStyle(int nIndex) const;

매개 변수

nIndex
검색할 도구 모음 단추 또는 구분 기호 스타일의 인덱스입니다.

Return Value

로 지정된 nIndex단추 또는 구분 기호의 스타일입니다.

설명

단추의 스타일은 단추가 표시되는 방식과 사용자 입력에 응답하는 방식을 결정합니다. 단추 스타일 예제를 참조 SetButtonStyle 하세요.

CToolBar::GetButtonText

이 멤버 함수를 호출하여 단추에 표시되는 텍스트를 검색합니다.

CString GetButtonText(int nIndex) const;

void GetButtonText(
    int nIndex,
    CString& rString) const;

매개 변수

nIndex
검색할 텍스트의 인덱스입니다.

rString
검색할 CString 텍스트를 포함할 개체에 대한 참조입니다.

Return Value

CString 단추 텍스트가 포함된 개체입니다.

설명

이 멤버 함수의 두 번째 형식은 문자열 텍스트로 CString 개체를 채웁니다.

CToolBar::GetItemID

이 멤버 함수는 지정한 단추 또는 구분 기호의 명령 ID를 nIndex반환합니다.

UINT GetItemID(int nIndex) const;

매개 변수

nIndex
ID를 검색할 항목의 인덱스입니다.

Return Value

로 지정된 단추 또는 구분 기호의 명령 ID입니다 nIndex.

설명

구분 기호가 반환합니다 ID_SEPARATOR.

CToolBar::GetItemRect

이 멤버 함수는 RECT 주소가 포함된 구조체를 lpRect 지정한 단추 또는 구분 기호의 좌표로 nIndex채웁니다.

virtual void GetItemRect(
    int nIndex,
    LPRECT lpRect) const;

매개 변수

nIndex
사각형 좌표를 검색할 항목(단추 또는 구분 기호)의 인덱스입니다.

lpRect
항목의 RECT 좌표를 포함할 구조체의 주소입니다.

설명

좌표는 도구 모음의 왼쪽 위 모서리를 기준으로 픽셀 단위입니다.

콤보 상자 또는 다른 컨트롤로 바꿀 구분 기호의 좌표를 가져오는 데 사용합니다 GetItemRect .

예시

CToolBar::SetSizes에 대한 예를 참조하세요.

CToolBar::GetToolBarCtrl

이 멤버 함수를 사용하면 기본 공용 컨트롤에 직접 액세스할 수 있습니다.

CToolBarCtrl& GetToolBarCtrl() const;

Return Value

CToolBarCtrl 개체에 대한 참조입니다.

설명

Windows 도구 모음 일반 컨트롤의 기능을 활용 하 고 도구 모음 사용자 지정에 대 한 지원을 CToolBarCtrl 활용 하는 데 사용 GetToolBarCtrl 합니다.

일반적인 컨트롤을 사용하는 방법에 대한 자세한 내용은 Windows SDK의 컨트롤공용 컨트롤 문서를 참조하세요.

예시

// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd.

//This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE
   | CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
   TRACE0("Failed to create toolbar\n");
   return -1;      // fail to create
}

//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));

CRect temp;
m_wndToolBar.GetItemRect(0, &temp);
m_wndToolBar.GetToolBarCtrl().SetButtonSize(CSize(temp.Width(),
   temp.Height()));

CToolBar::LoadBitmap

이 멤버 함수를 호출하여 지정된 lpszResourceName 비트맵을 로드합니다 nIDResource.

BOOL LoadBitmap(LPCTSTR lpszResourceName);
BOOL LoadBitmap(UINT nIDResource);

매개 변수

lpszResourceName
로드할 비트맵의 리소스 이름에 대한 포인터입니다.

nIDResource
로드할 비트맵의 리소스 ID입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

비트맵에는 각 도구 모음 단추에 대해 하나의 이미지가 포함되어야 합니다. 이미지가 표준 크기(너비 16픽셀 및 높이 15픽셀)가 아닌 경우 단추 크기와 해당 이미지를 설정하기 위해 호출 SetSizes 합니다.

Warning

CToolBar 는 최대 16가지 색의 비트맵을 지원합니다. 도구 모음 편집기에 이미지를 로드하면 필요한 경우 Visual Studio에서 이미지를 16색 비트맵으로 자동으로 변환하고 이미지가 변환된 경우 경고 메시지를 표시합니다. 16개 이상의 색이 있는 이미지를 사용하는 경우(외부 편집기를 사용하여 이미지 편집) 애플리케이션이 예기치 않게 동작할 수 있습니다.

CToolBar::LoadToolBar

이 멤버 함수를 호출하여 지정된 lpszResourceName 도구 모음을 로드합니다 nIDResource.

BOOL LoadToolBar(LPCTSTR lpszResourceName);
BOOL LoadToolBar(UINT nIDResource);

매개 변수

lpszResourceName
로드할 도구 모음의 리소스 이름에 대한 포인터입니다.

nIDResource
로드할 도구 모음의 리소스 ID입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

도구 모음 리소스를 만드는 방법에 대한 자세한 내용은 도구 모음 편집기를 참조하세요.

예시

CToolBar::CreateEx에 대한 예를 참조하세요.

CToolBar::SetBitmap

이 멤버 함수를 호출하여 도구 모음의 비트맵 이미지를 설정합니다.

BOOL SetBitmap(HBITMAP hbmImageWell);

매개 변수

hbmImageWell
도구 모음과 연결된 비트맵 이미지의 핸들입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

예를 들어 사용자가 단추의 동작을 변경하는 문서에서 작업을 수행한 후 비트맵 이미지를 변경하도록 호출 SetBitmap 합니다.

CToolBar::SetButtonInfo

이 멤버 함수를 호출하여 단추의 명령 ID, 스타일 및 이미지 번호를 설정합니다.

void SetButtonInfo(
    int nIndex,
    UINT nID,
    UINT nStyle,
    int iImage);

매개 변수

nIndex
정보를 설정할 단추 또는 구분 기호의 인덱스(0부터 시작)입니다.

nID
단추의 명령 ID가 설정된 값입니다.

nStyle
새 단추 스타일입니다. 지원되는 단추 스타일은 다음과 같습니다.

  • TBBS_BUTTON 표준 푸시버튼(기본값)

  • TBBS_SEPARATOR 구분 기호

  • TBBS_CHECKBOX 자동 확인란 단추

  • TBBS_GROUP 단추 그룹의 시작을 표시합니다.

  • TBBS_CHECKGROUP 확인란 단추 그룹의 시작을 표시합니다.

  • TBBS_DROPDOWN 드롭다운 목록 단추를 만듭니다.

  • TBBS_AUTOSIZE 단추의 너비는 이미지 크기가 아니라 단추의 텍스트를 기반으로 계산됩니다.

  • TBBS_NOPREFIX 단추 텍스트에는 연결된 액셀러레이터 접두사가 없습니다.

iImage
비트맵 내의 단추 이미지에 대한 새 인덱스입니다.

설명

스타일 TBBS_SEPARATOR이 있는 구분 기호의 경우 이 함수는 구분 기호의 너비를 픽셀 단위로 저장된 iImage값으로 설정합니다.

참고 항목

매개 변수를 사용하여 nStyle 단추 상태를 설정할 수도 있습니다. 그러나 단추 상태는 처리기에 의해 ON_UPDATE_COMMAND_UI 제어되므로 다음 유휴 처리 중에 사용하는 SetButtonInfo 모든 상태가 손실됩니다. 자세한 내용은 사용자 인터페이스 개체TN031: 컨트롤 막대를 업데이트하는 방법을 참조하세요.

비트맵 이미지 및 단추에 대한 자세한 내용은 개요 및 CToolBar::LoadBitmapCToolBar 참조하세요.

CToolBar::SetButtons

이 멤버 함수는 각 도구 모음 단추의 명령 ID를 배열 lpIDArray의 해당 요소에 지정된 값으로 설정합니다.

BOOL SetButtons(
    const UINT* lpIDArray,
    int nIDCount);

매개 변수

lpIDArray
명령 ID 배열에 대한 포인터입니다. 빈 단추를 할당하는 것은 NULL일 수 있습니다.

nIDCount
가 가리키는 lpIDArray배열의 요소 수입니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

배열의 요소에 값 ID_SEPARATOR이 있으면 도구 모음의 해당 위치에 구분 기호가 만들어집니다. 또한 이 함수는 각 단추의 스타일 TBBS_BUTTON 과 각 구분 기호의 스타일을 TBBS_SEPARATOR설정하고 각 단추에 이미지 인덱스를 할당합니다. 이미지 인덱스는 비트맵 내에서 단추 이미지의 위치를 지정합니다.

이 함수는 구분 기호에 대한 이미지 인덱스를 할당하지 않으므로 비트맵에서 구분 기호를 고려할 필요가 없습니다. 도구 모음에 위치 0, 1 및 3의 단추와 위치 2의 구분 기호가 있는 경우 비트맵의 0, 1 및 2 위치에 있는 이미지는 각각 위치 0, 1 및 3의 단추에 할당됩니다.

NULL인 경우 lpIDArray 이 함수는 지정한 항목 nIDCount수에 대한 공간을 할당합니다. 각 항목의 특성을 설정하는 데 사용합니다 SetButtonInfo .

CToolBar::SetButtonStyle

이 멤버 함수를 호출하여 단추 또는 구분 기호의 스타일을 설정하거나 단추를 그룹화합니다.

void SetButtonStyle(
    int nIndex,
    UINT nStyle);

매개 변수

nIndex
정보를 설정할 단추 또는 구분 기호의 인덱스입니다.

nStyle
단추 스타일입니다. 지원되는 단추 스타일은 다음과 같습니다.

  • TBBS_BUTTON 표준 푸시버튼(기본값)

  • TBBS_SEPARATOR 구분 기호

  • TBBS_CHECKBOX 자동 확인란 단추

  • TBBS_GROUP 단추 그룹의 시작을 표시합니다.

  • TBBS_CHECKGROUP 확인란 단추 그룹의 시작을 표시합니다.

  • TBBS_DROPDOWN 드롭다운 목록 단추 만들기

  • TBBS_AUTOSIZE 단추의 너비는 이미지 크기가 아니라 단추의 텍스트를 기반으로 계산됩니다.

  • TBBS_NOPREFIX 단추 텍스트에 연결된 액셀러레이터 접두사가 없습니다.

설명

단추의 스타일은 단추가 표시되는 방식과 사용자 입력에 응답하는 방식을 결정합니다.

호출 SetButtonStyle하기 전에 멤버 함수를 GetButtonStyle 호출하여 단추 또는 구분 기호 스타일을 검색합니다.

참고 항목

매개 변수를 사용하여 nStyle 단추 상태를 설정할 수도 있습니다. 그러나 단추 상태는 처리기에 의해 ON_UPDATE_COMMAND_UI 제어되므로 다음 유휴 처리 중에 사용하는 SetButtonStyle 모든 상태가 손실됩니다. 자세한 내용은 사용자 인터페이스 개체TN031: 컨트롤 막대를 업데이트하는 방법을 참조하세요.

CToolBar::SetButtonText

이 함수를 호출하여 단추에 텍스트를 설정합니다.

BOOL SetButtonText(
    int nIndex,
    LPCTSTR lpszText);

매개 변수

nIndex
텍스트를 설정할 단추의 인덱스입니다.

lpszText
단추에 설정할 텍스트를 가리킵니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

예시

CToolBar::GetToolBarCtrl에 대한 예를 참조하세요.

CToolBar::SetHeight

이 멤버 함수는 도구 모음의 높이를 지정된 값(픽셀) cyHeight로 설정합니다.

void SetHeight(int cyHeight);

매개 변수

cyHeight
도구 모음의 높이(픽셀)입니다.

설명

호출 SetSizes한 후 이 멤버 함수를 사용하여 표준 도구 모음 높이를 재정의합니다. 높이가 너무 작으면 단추가 아래쪽에 잘립니다.

이 함수가 호출되지 않으면 프레임워크는 단추의 크기를 사용하여 도구 모음 높이를 결정합니다.

CToolBar::SetSizes

이 멤버 함수를 호출하여 도구 모음의 단추를 지정된 크기(픽셀) sizeButton로 설정합니다.

void SetSizes(
    SIZE sizeButton,
    SIZE sizeImage);

매개 변수

sizeButton
각 단추의 크기(픽셀)입니다.

sizeImage
각 이미지의 픽셀 크기입니다.

설명

매개 변수는 sizeImage 도구 모음의 비트맵에 있는 이미지의 크기(픽셀)를 포함해야 합니다. 크기는 sizeButton 이미지와 너비가 7픽셀, 높이가 6픽셀을 더해도 충분해야 합니다. 또한 이 함수는 단추에 맞게 도구 모음 높이를 설정합니다.

단추 및 이미지 크기에 대한 소프트웨어 디자인 권장 사항에 대한 Windows 인터페이스 지침을 따르지 않는 도구 모음에 대해서만 이 멤버 함수를 호출합니다.

예시

// This code fragment is taken from CMainFrame::OnCreate
// CMainFrame is derived from CMDIFrameWnd

// This example shows how to add text to toolbar buttons.
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE 
   | CBRS_TOP) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
   TRACE0("Failed to create toolbar\n");
   return -1;      // fail to create
}

//Show text on toolbar buttons.
VERIFY(m_wndToolBar.SetButtonText(0, _T("New")));
VERIFY(m_wndToolBar.SetButtonText(1, _T("Open")));
VERIFY(m_wndToolBar.SetButtonText(2, _T("Save")));
VERIFY(m_wndToolBar.SetButtonText(4, _T("Cut")));
VERIFY(m_wndToolBar.SetButtonText(5, _T("Copy")));
VERIFY(m_wndToolBar.SetButtonText(6, _T("Paste")));
VERIFY(m_wndToolBar.SetButtonText(8, _T("Print")));
VERIFY(m_wndToolBar.SetButtonText(9, _T("About")));

CRect temp;
m_wndToolBar.GetItemRect(0,&temp);
m_wndToolBar.SetSizes(CSize(temp.Width(),
   temp.Height()),CSize(16,15));

참고 항목

MFC 샘플 CTRLBARS
MFC 샘플 DLGCBR32
MFC 샘플 DOCKTOOL
CControlBar 수업
계층 구조 차트
CToolBarCtrl 수업