다음을 통해 공유


도킹 및 부동 도구 모음

Mfc 라이브러리는 도킹 가능한 도구 모음을 지원합니다.도킹 가능한 도구 모음 연결 수 또는, 모든 부모 창의 측면에 도킹 또는 분리 하거나, 자체 미니 프레임 창에서 부동 수 있습니다.이 문서에서는 응용 프로그램에서 도킹 가능한 도구 모음을 사용 하는 방법을 설명 합니다.

응용 프로그램 마법사를 사용 하 여 응용 프로그램의 기초를 생성 하는 경우에서는 도킹 가능한 도구 모음을 사용할 것인지 여부를 선택 해야 합니다.기본적으로 응용 프로그램 마법사는 응용 프로그램에서 도킹 가능한 도구 모음을 배치 하는 데 필요한 세 가지 작업을 수행 하는 코드를 생성 됩니다.

  • 프레임 창에서 도킹 사용.

  • 도킹 도구 모음을 사용 합니다..

  • (프레임 창) 도구 모음 도킹.

이러한 단계 중 하나라도 누락 되 면 응용 프로그램 표준 도구 모음에 표시 됩니다.마지막 두 단계는 응용 프로그램에서 도킹 가능한 각 도구 모음에 대하여 수행해야 합니다.

이 문서에서 다루는 다른 항목은 다음과 같습니다.

  • 부동 도구 모음

  • 동적으로 도구 모음 크기를 조정합니다.

  • 고정 스타일 도구 모음의 줄 바꿈 위치 설정

일반 MFC 샘플을 참조 하십시오. DOCKTOOL 에 대 한 예제입니다.

프레임 창의 도킹 활성화

프레임 창에 도구 모음을 도킹 하려면 프레임 창 (또는 대상) 도킹 활성화 되어야 합니다.이렇게 사용 하는 CFrameWnd::EnableDocking 하나를 사용 하는 함수 DWORD 에 일련의 스타일 매개 변수가 비트 도킹을 허용할 프레임 창의 어떤 면을 나타내는.도구 모음 도킹 될 정도 이며 여러 측면에 도킹 될 수 있는, 양 옆에 표시 하는 경우 매개 변수 전달 EnableDocking 는 다음과 같은 순서로 사용 됩니다: 위쪽, 아래쪽, 왼쪽, 오른쪽.수 없게 하려면 컨트롤을 도킹 하려면 원하는 위치를 막대, 전달 CBRS_ALIGN_ANYEnableDocking.

도구 모음을 도킹 활성화

도킹 대상을 준비한 후 비슷한 방법으로 도구 모음 (또는 소스)를 준비 해야 합니다.호출 CControlBar::EnableDocking 각 도구 모음을 도킹 하려면 대상 지정 면 도구 모음 도킹 해야 합니다.호출에 지정 된 면 없으면 CControlBar::EnableDocking 이 프레임 창의 도킹 가능한 면과 일치 하 고 도구 모음을 고정할 수 없습니다-이 배치 됩니다.부동 도구 모음이 되면 프레임 창에 도킹될 수 없습니다.

원하는 효과 영구적으로 부동 도구 모음이 되 면 호출 EnableDocking 0 매개 변수를 사용 합니다.그런 다음 호출 CFrameWnd::FloatControlBar.도구 모음이 부동, 도킹 될 수 없습니다 영구적으로 유지 됩니다.

도구 모음 도킹

프레임 워크 호출 CFrameWnd::DockControlBar 사용자를 시도할 때 프레임 창의 도킹 있습니다 쪽 도구 모음을 삭제 합니다.

또한 컨트롤 막대를 프레임 창에 도킹 하려면 언제 든 지이 함수를 호출할 수 있습니다.이 일반적으로 초기화 하는 동안 수행 됩니다.프레임 창의 특정 측면에 둘 이상의 도구 모음을 도킹할 수 있습니다.

부동 도구 모음

분리는 프레임 창에서 도킹 가능한 도구 모음을 부동 도구 모음 이라고 합니다.호출 CFrameWnd::FloatControlBar 이 작업을 수행 합니다.지점에 배치 되어야 할 위치에 놓을지 도구 모음, 부동 도구 모음의 가로 또는 세로 인지 여부를 결정 하는 맞춤 스타일을 지정 합니다.

사용자가 도구 모음을 도킹 된 위치 밖으로 끌어 그 위치 도킹 활성화 되지 않은 위치에 놓으면 때이 함수를 호출 하는 프레임 워크입니다.이 안쪽 이나 바깥쪽 프레임 창의 아무 곳 이나 수 있습니다.마찬가지로 DockControlBar를 초기화 하는 동안이 함수를 호출할 수도 있습니다.

MFC 구현의 도킹 가능한 도구 모음 도킹 가능한 도구 모음 지원 일부 응용 프로그램의 확장 된 기능 중 일부를 제공 하지 않습니다.사용자 지정 가능한 도구 모음 같은 기능을 제공 됩니다.

동적으로 도구 모음 크기를 조정합니다.

Visual C++ 버전 4.0에서는 동적으로 떠 있는 도구 모음의 크기를 조정 하는 응용 프로그램의 사용자에 대해 할 수 있습니다.일반적으로 도구 모음에 가로로 표시 되는 긴, 선형 모양을입니다.도구 모음의 방향과 모양은 변경할 수 있습니다.예를 들어, 사용자 중 프레임 창의 세로 면에 대 한 도구 모음을 도킹 하면 도형의 세로 레이아웃으로 변경 합니다.또한 도구 모음에 여러 개의 단추 행의 모양을 변경 하는 것이 가능 합니다.

다음과 같은 작업을 수행할 수 있습니다.

  • 동적 크기 조정을 도구 모음 특징으로 지정

  • 고정된 크기 조정을 도구 모음 특징으로 지정

이 지원을 제공 하는 호출을 사용의 두 가지 새로운 도구 모음 스타일의 CToolBar::Create 멤버 함수입니다.여기에 해당하는 항목은 다음과 같습니다.

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

  • CBRS_SIZE_FIXED 는 컨트롤 막대를 고정 합니다.

동적 크기 스타일 도구 모음 이동 하는 동안 있지만 도킹 되어 있지 않을 때 크기를 조정할 수 있습니다."도구 모음" 사용자가 해당 가장자리를 끌면 셰이프를 변경 해야 할 곳 감싸고.

고정 크기 스타일 단추의 위치에서 각 열을 수정 하 여 도구 모음의 줄 바꿈 상태가 유지 됩니다.응용 프로그램의 사용자는 도구 모음의 모양을 변경할 수 없습니다.도구 모음 단추 사이의 구분선의 위치와 같은 지정 된 위치에서 줄 바꿈됩니다.도구 모음 도킹 또는 부동 인지이 모양을 유지 합니다.여러 열의 단추가 포함 된 고정된 팔레트가 됩니다.

또한 사용할 수 있습니다 CToolBar::GetButtonStyle 된 상태 및 스타일 단추를 도구 모음을 반환 합니다.단추의 스타일 단추를 어떻게 나타나고 사용자 입력에 응답 하는 방식을 결정 합니다. 상태 단추는 래핑된 상태 인지 여부를 알려 줍니다.

고정 스타일 도구 모음의 줄 바꿈 위치를 설정합니다.

고정 크기 스타일을 도구 모음에 도구 모음 단추 인덱스를 도구 모음에 배치 됩니다 지정 합니다.다음 코드에서는 이렇게 하면 주 프레임 창에서의 OnCreate 를 재정의 합니다.

// Get the style of the first button separator
UINT nStyle = m_wndToolBar.GetButtonStyle(3);
// Augment the state for wrapping
nStyle |= TBBS_WRAPPED;
m_wndToolBar.SetButtonStyle(3, nStyle);

// Do the same for other wrap locations ...

// Set the bar style to size fixed
m_wndToolBar.SetBarStyle(m_wndToolBar.GetBarStyle() |
   CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_FIXED);

// Call docking/floating functions as needed ...

MFC 일반 샘플 DOCKTOOL 클래스의 멤버 함수를 사용 하는 방법을 보여 줍니다. 제공CToolBar 동적 레이아웃 도구 모음을 관리할 수 있습니다.EDITBAR 파일을 참조 하십시오.CPP 파일을 사용 합니다.

a7022c58.collapse_all(ko-kr,VS.110).gif추가 정보

참고 항목

개념

MFC 도구 모음 구현