CToolTipCtrl Class를 기반으로 하는 확장된 도구 설명 구현입니다. CMFCToolTipCtrl 클래스 기반의 도구 설명은 아이콘, 레이블 및 설명을 표시할 수 있습니다. 그라데이션 채우기, 사용자 지정 텍스트와 테두리 색, 굵은 텍스트, 둥근 모서리 또는 풍선 스타일을 사용하여 시각적인 모양을 사용자 지정할 수 있습니다.
더 자세한 내용은 Visual Studio 설치의 VC\atlmfc\src\mfc 폴더에 있는 소스 코드를 참조하세요.
구문
class CMFCToolTipCtrl : public CToolTipCtrl
멤버
공용 생성자
| 속성 | 설명 |
|---|---|
CMFCToolTipCtrl::CMFCToolTipCtrl |
기본 생성자입니다. |
공용 메서드
| 이름 | 설명 |
|---|---|
| CMFCToolTipCtrl::GetIconSize | 도구 설명에 아이콘 크기를 반환합니다. |
| CMFCToolTipCtrl::GetParams | 도구 설명의 표시 설정을 반환합니다. |
| CMFCToolTipCtrl::OnDrawBorder | 도구 설명의 테두리를 그립니다. |
| CMFCToolTipCtrl::OnDrawDescription | |
| CMFCToolTipCtrl::OnDrawIcon | 도구 설명에 아이콘을 표시합니다. |
| CMFCToolTipCtrl::OnDrawLabel | 도구 설명의 레이블을 그리거나 레이블의 크기를 계산합니다. |
| CMFCToolTipCtrl::OnDrawSeparator | 도구 설명에서 레이블과 설명 사이에 구분 기호를 그립니다. |
| CMFCToolTipCtrl::OnFillBackground | 도구 설명 배경을 채웁니다. |
| CMFCToolTipCtrl::SetDescription | 도구 설명에 표시할 설명을 설정합니다. |
| CMFCToolTipCtrl::SetFixedWidth | |
| CMFCToolTipCtrl::SetHotRibbonButton | |
| CMFCToolTipCtrl::SetLocation | |
| CMFCToolTipCtrl::SetParams | CMFCToolTipInfo 개체를 사용하여 도구 설명의 시각적 모양을 지정합니다. |
설명
애플리케이션에서 사용자 지정된 도구 설명을 구현하려면 , CMFCToolTipInfo및 CTooltipManager 클래스 개체를 함께 사용합니다CMFCToolTipCtrl.
예를 들어 풍선 스타일의 도구 설명을 사용하려면 다음 단계를 수행합니다.
CWinAppEx 클래스 메서드를 사용하여 애플리케이션에서 도구 설명 관리자를 초기화합니다.
CMFCToolTipInfo구조체를 만들어 원하는 시각적 스타일을 지정합니다.CMFCToolTipInfo params; params.m_bBoldLabel = FALSE; params.m_bDrawDescription = FALSE; params.m_bDrawIcon = FALSE; params.m_bRoundedCorners = TRUE; params.m_bDrawSeparator = FALSE; if (m_bCustomColors) { params.m_clrFill = RGB (255, 255, 255); params.m_clrFillGradient = RGB (228, 228, 240); params.m_clrText = RGB (61, 83, 80); params.m_clrBorder = RGB (144, 149, 168); }CTooltipManager::SetTooltipParams 메서드를 사용하여 개체에 정의된 스타일을 사용하여 애플리케이션의 모든 도구 설명에
CMFCToolTipInfo대한 비주얼 스타일을 설정합니다.theApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL, RUNTIME_CLASS (CMFCToolTipCtrl), ¶ms);
CMFCToolTipCtrl에서 새 클래스를 파생시켜 도구 설명 동작과 렌더링을 제어할 수도 있습니다. 새 도구 설명 컨트롤 클래스를 지정하려면 CTooltipManager::SetTooltipParams 메서드를 사용합니다.
myApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL,
RUNTIME_CLASS (CMyToolTipCtrl))
기본 도구 설명 컨트롤 클래스를 복원하고 도구 설명 모양을 기본 상태로 다시 설정하려면 SetTooltipParams의 런타임 클래스 및 도구 설명 정보 매개 변수에 NULL을 지정합니다.
theApp.GetTooltipManager ()->SetTooltipParams (AFX_TOOLTIP_TYPE_ALL,
NULL,
NULL);
예시
다음 예제에서는 CMFCToolTipCtrl 개체를 생성하고, 도구 설명에 표시되는 설명을 설정하고, 도구 설명 컨트롤의 너비를 설정하는 방법을 보여 줍니다.
CMFCToolTipInfo *params = new CMFCToolTipInfo();
params->m_bBoldLabel = FALSE;
params->m_bDrawDescription = FALSE;
params->m_bDrawIcon = FALSE;
params->m_bRoundedCorners = TRUE;
params->m_bDrawSeparator = FALSE;
params->m_clrFill = RGB(255, 255, 255);
params->m_clrFillGradient = RGB(228, 228, 240);
params->m_clrText = RGB(61, 83, 80);
params->m_clrBorder = RGB(144, 149, 168);
CMFCToolTipCtrl *tipCtrl = new CMFCToolTipCtrl(params);
tipCtrl->SetDescription(_T("tool tip control"));
tipCtrl->SetFixedWidth(100, 150);
상속 계층 구조
요구 사항
헤더: afxtooltipctrl.h
CMFCToolTipCtrl::CMFCToolTipCtrl
CMFCToolTipCtrl(CMFCToolTipInfo* pParams = NULL);
매개 변수
[in] pParams
설명
CMFCToolTipCtrl::GetIconSize
도구 설명에 아이콘 크기를 반환합니다.
virtual CSize GetIconSize();
Return Value
아이콘의 크기(픽셀)입니다.
CMFCToolTipCtrl::GetParams
도구 설명의 표시 설정을 반환합니다.
const CMFCToolTipInfo& GetParams() const;
Return Value
CMFCToolTipInfo 클래스 개체에 저장된 현재 도구 설명 표시 설정입니다.
CMFCToolTipCtrl::OnDrawBorder
도구 설명의 테두리를 그립니다.
virtual void OnDrawBorder(
CDC* pDC,
CRect rect,
COLORREF clrLine);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
rect
[in] 도구 설명의 경계 사각형입니다.
clrLine
[in] 테두리 색입니다.
설명
파생 클래스에서 이 메서드를 재정의하여 도구 설명 테두리의 모양을 사용자 지정합니다.
CMFCToolTipCtrl::OnDrawDescription
virtual CSize OnDrawDescription(
CDC* pDC,
CRect rect,
BOOL bCalcOnly);
매개 변수
[in] pDC
[in] rect
[in] bCalcOnly
Return Value
설명
CMFCToolTipCtrl::OnDrawIcon
도구 설명에 아이콘을 표시합니다.
virtual BOOL OnDrawIcon(
CDC* pDC,
CRect rectImage);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
rectImage
[in] 아이콘의 좌표입니다.
Return Value
아이콘이 그려진 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
파생 클래스에서 이 메서드를 재정의하여 사용자 지정 아이콘을 표시합니다. 또한 CMFCToolTipCtrl::GetIconSize를 재정의하여 도구 설명이 텍스트 및 설명의 레이아웃을 올바르게 계산할 수 있도록 해야 합니다.
CMFCToolTipCtrl::OnDrawLabel
도구 설명의 레이블을 그리거나 레이블의 크기를 계산합니다.
virtual CSize OnDrawLabel(
CDC* pDC,
CRect rect,
BOOL bCalcOnly);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
rect
[in] 레이블 영역의 경계 사각형입니다.
bCalcOnly
[in] TRUE이면 레이블이 그려지지 않습니다.
Return Value
레이블의 크기(픽셀)입니다.
설명
도구 설명 레이블의 모양을 사용자 지정하려는 경우 파생 클래스에서 이 메서드를 재정의합니다.
CMFCToolTipCtrl::OnDrawSeparator
도구 설명에서 레이블과 설명 사이에 구분 기호를 그립니다.
virtual void OnDrawSeparator(
CDC* pDC,
int x1,
int x2,
int y);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
x1
[in] 구분 기호 왼쪽 끝의 가로 좌표입니다.
x2
[in] 구분 기호 오른쪽 끝의 가로 좌표입니다.
Y
[in] 구분 기호의 세로 좌표입니다.
설명
기본 구현은 점(x1, y)에서 점(x2, y)으로 선을 그립니다.
파생 클래스에서 이 메서드를 재정의하여 구분 기호의 모양을 사용자 지정합니다.
CMFCToolTipCtrl::OnFillBackground
도구 설명 배경을 채웁니다.
virtual void OnFillBackground(
CDC* pDC,
CRect rect,
COLORREF& clrText,
COLORREF& clrLine);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
rect
[in] 채울 영역의 경계 사각형을 지정합니다.
clrText
[in] 도구 설명 전경색입니다.
clrLine
[in] 레이블과 설명 사이의 테두리 색과 구분 기호 선입니다.
설명
기본 구현은 CMFCToolTipCtrl::SetParams에 대한 최신 호출에서 지정한 색 또는 패턴으로 사각형에 지정된 사각형을 채웁니다.
도구 설명의 모양을 사용자 지정하려는 경우 파생 클래스에서 이 메서드를 재정의합니다.
CMFCToolTipCtrl::SetDescription
도구 설명에 표시할 설명을 설정합니다.
virtual void SetDescription(const CString strDesrciption);
매개 변수
strDesrciption
[in] 설명 텍스트입니다.
설명
설명 텍스트는 구분 기호 아래의 도구 설명에 표시됩니다.
CMFCToolTipCtrl::SetFixedWidth
void SetFixedWidth(
int nWidthRegular,
int nWidthLargeImage);
매개 변수
[in] nWidthRegular
[in] nWidthLargeImage
설명
CMFCToolTipCtrl::SetHotRibbonButton
void SetHotRibbonButton(CMFCRibbonButton* pRibbonButton);
매개 변수
[in] pRibbonButton
설명
CMFCToolTipCtrl::SetLocation
void SetLocation(CPoint pt);
매개 변수
[in] pt
설명
CMFCToolTipCtrl::SetParams
CMFCToolTipInfo 클래스 개체를 사용하여 도구 설명의 시각적 모양을 지정합니다.
void SetParams(CMFCToolTipInfo* pParams);
매개 변수
pParams
[in] 표시 매개 변수를 포함하는 CMFCToolTipInfo 클래스 개체에 대한 포인터입니다.
설명
도구 설명이 표시될 때마다 pParams가 지정하는 색과 비주얼 스타일을 사용하여 그립니다. pParams 값은 CMFCToolTipCtrl::OnDrawBorder를 재정의하는 파생 클래스에서 액세스할 수 있는 보호된 멤버m_Params에 저장됩니다. CMFCToolTipCtrl::OnDrawIcon, CMFCToolTipCtrl::OnDrawLabel, CMFCToolTipCtrl::OnDrawSeparator 또는 CMFCToolTipCtrl::OnFillBackground를 사용하여 지정된 모양을 유지합니다.
참고 항목
계층 구조 차트
클래스
CToolTipCtrl Class
CTooltipManager 클래스
CMFCToolTipInfo 클래스
CWinAppEx 클래스