CMFCBaseVisualManager 클래스
파생된 시각적 관리자와 Windows 테마 API 간의 계층입니다.
CMFCBaseVisualManager
는 사용 가능한 경우 UxTheme.dll 로드하고 Windows 테마 API 메서드에 대한 액세스를 관리합니다.
이 클래스는 내부 전용입니다.
구문
class CMFCBaseVisualManager: public CObject
멤버
공용 생성자
속성 | 설명 |
---|---|
CMFCBaseVisualManager::CMFCBaseVisualManager | CMFCBaseVisualManager 개체를 생성하고 초기화합니다. |
CMFCBaseVisualManager::~CMFCBaseVisualManager |
소멸자 |
공용 메서드
이름 | 설명 |
---|---|
CMFCBaseVisualManager::D rawCheckBox | 현재 Windows 테마를 사용하여 확인란 컨트롤을 그립니다. |
CMFCBaseVisualManager::D awComboBorder | 현재 Windows 테마를 사용하여 콤보 상자 테두리를 그립니다. |
CMFCBaseVisualManager::D awComboDropButton | 현재 Windows 테마를 사용하여 콤보 상자 드롭다운 단추를 그립니다. |
CMFCBaseVisualManager::D rawPushButton | 현재 Windows 테마를 사용하여 푸시 단추를 그립니다. |
CMFCBaseVisualManager::D rawRadioButton | 현재 Windows 테마를 사용하여 라디오 단추 컨트롤을 그립니다. |
CMFCBaseVisualManager::D rawStatusBarProgress | 현재 Windows 테마를 사용하여 상태 표시줄 컨트롤( CMFCStatusBar 클래스)에 진행률 표시줄을 그립니다. |
CMFCBaseVisualManager::FillReBarPane | 현재 Windows 테마를 사용하여 철근 컨트롤의 배경을 채웁니다. |
CMFCBaseVisualManager::GetStandardWindowsTheme | 현재 Windows 테마를 가져옵니다. |
보호된 메서드
속성 | 설명 |
---|---|
CMFCBaseVisualManager::CleanUpThemes | 에서 가져온 모든 핸들에 UpdateSystemColors 대한 호출 CloseThemeData 입니다. |
CMFCBaseVisualManager::UpdateSystemColors | 창, 도구 모음, 단추 등 다양한 컨트롤을 그리기 위한 핸들을 가져오는 호출 OpenThemeData 입니다. |
설명
이 클래스의 개체를 직접 인스턴스화할 필요는 없습니다.
모든 시각적 관리자에 대한 기본 클래스이므로 CMFCVisualManager::GetInstance를 호출하고, 현재 Visual Manager에 대한 포인터를 가져오고, 해당 포인터를 사용하기 위한 메서드에 CMFCBaseVisualManager
액세스할 수 있습니다. 그러나 현재 Windows 테마를 사용하여 컨트롤을 표시해야 하는 경우 인터페이스를 사용하는 CMFCVisualManagerWindows
것이 좋습니다.
상속 계층 구조
요구 사항
헤더: afxvisualmanager.h
CMFCBaseVisualManager::CleanUpThemes
에서 가져온 모든 핸들에 UpdateSystemColors
대한 호출 CloseThemeData
입니다.
void CleanUpThemes();
설명
내부 전용.
CMFCBaseVisualManager::CMFCBaseVisualManager
CMFCBaseVisualManager
개체를 생성하고 초기화합니다.
CMFCBaseVisualManager();
CMFCBaseVisualManager::D rawCheckBox
현재 Windows 테마를 사용하여 확인란 컨트롤을 그립니다.
virtual BOOL DrawCheckBox(
CDC* pDC,
CRect rect,
BOOL bHighlighted,
int nState,
BOOL bEnabled,
BOOL bPressed);
);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터
rect
[in] 확인란의 경계 사각형입니다.
bHighlighted
[in] 확인란이 강조 표시될지 여부를 지정합니다.
nState
[in] 선택되지 않은 경우 0, 정상 검사의 경우 1,
혼합 노멀의 경우 2입니다.
bEnabled
[in] 확인란의 사용 여부를 지정합니다.
bPressed
[in] 확인란을 누를지 여부를 지정합니다.
Return Value
테마 API를 사용하는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
nState의 값은 다음 확인란 스타일에 해당합니다.
nState | 확인란 스타일 |
---|---|
0 | CBS_UNCHECKEDNORMAL |
1 | CBS_CHECKEDNORMAL |
2 | CBS_MIXEDNORMAL |
CMFCBaseVisualManager::D awComboBorder
현재 Windows 테마를 사용하여 콤보 상자 테두리를 그립니다.
virtual BOOL DrawComboBorder(
CDC* pDC,
CRect rect,
BOOL bDisabled,
BOOL bIsDropped,
BOOL bIsHighlighted);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
rect
[in] 콤보 상자 테두리의 경계 사각형입니다.
bDisabled
[in] 콤보 상자 테두리를 사용하지 않도록 설정할지 여부를 지정합니다.
bIsDropped
[in] 콤보 상자 테두리를 삭제할지 여부를 지정합니다.
bIsHighlighted
[in] 콤보 상자 테두리가 강조 표시될지 여부를 지정합니다.
Return Value
테마 API를 사용하는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
CMFCBaseVisualManager::D awComboDropButton
현재 Windows 테마를 사용하여 콤보 상자 드롭다운 단추를 그립니다.
virtual BOOL DrawComboDropButton(
CDC* pDC,
CRect rect,
BOOL bDisabled,
BOOL bIsDropped,
BOOL bIsHighlighted);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
rect
[in] 콤보 상자 드롭다운 단추의 경계 사각형입니다.
bDisabled
[in] 콤보 상자 드롭다운 단추를 사용할 수 없는지 여부를 지정합니다.
bIsDropped
[in] 콤보 상자 드롭다운 단추가 드롭다운되는지 여부를 지정합니다.
bIsHighlighted
[in] 콤보 상자 드롭다운 단추가 강조 표시될지 여부를 지정합니다.
Return Value
테마 API를 사용하는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
CMFCBaseVisualManager::D rawPushButton
현재 Windows 테마를 사용하여 푸시 단추를 그립니다.
virtual BOOL DrawPushButton(
CDC* pDC,
CRect rect,
CMFCButton* pButton,
UINT uiState);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
rect
[in] 누름 단추의 경계 사각형입니다.
pButton
[in] 그릴 CMFCButton 클래스 개체에 대한 포인터입니다.
uiState
[in] 무시됩니다. 상태는 pButton에서 가져옵니다.
Return Value
테마 API를 사용하는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
CMFCBaseVisualManager::D rawRadioButton
현재 Windows 테마를 사용하여 라디오 단추 컨트롤을 그립니다.
virtual BOOL DrawRadioButton(
CDC* pDC,
CRect rect,
BOOL bHighlighted,
BOOL bChecked,
BOOL bEnabled,
BOOL bPressed);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
rect
[in] 라디오 단추의 경계 사각형입니다.
bHighlighted
[in] 라디오 단추가 강조 표시되는지 여부를 지정합니다.
bChecked
[in] 라디오 단추가 선택되어 있는지 여부를 지정합니다.
bEnabled
[in] 라디오 단추를 사용할 수 있는지 여부를 지정합니다.
bPressed
[in] 라디오 단추를 누를지 여부를 지정합니다.
Return Value
테마 API를 사용하는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
CMFCBaseVisualManager::D rawStatusBarProgress
현재 Windows 테마를 사용하여 상태 표시줄 컨트롤( CMFCStatusBar 클래스)에 진행률 표시줄을 그립니다.
virtual BOOL DrawStatusBarProgress(
CDC* pDC,
CMFCStatusBar* pStatusBar,
CRect rectProgress,
int nProgressTotal,
int nProgressCurr,
COLORREF clrBar,
COLORREF clrProgressBarDest,
COLORREF clrProgressText,
BOOL bProgressText);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
pStatusBar
[in] 상태 표시줄에 대한 포인터입니다. 이 값은 무시됩니다.
rectProgress
[in] pDC 좌표에서 진행률 표시줄의 경계 사각형입니다.
nProgressTotal
[in] 총 진행률 값입니다.
nProgressCurr
[in] 현재 진행률 값입니다.
clrBar
[in] 시작 색입니다. CMFCBaseVisualManager
은 이 작업을 무시합니다. 파생 클래스는 색 그라데이션에 사용할 수 있습니다.
clrProgressBarDest
[in] 끝 색입니다. CMFCBaseVisualManager
은 이 작업을 무시합니다. 파생 클래스는 색 그라데이션에 사용할 수 있습니다.
clrProgressText
[in] 진행률 텍스트 색입니다. CMFCBaseVisualManager
은 이 작업을 무시합니다. 텍스트 색은 .에 의해 afxGlobalData.clrBtnText
정의됩니다.
bProgressText
[in] 진행률 텍스트를 표시할지 여부를 지정합니다.
Return Value
테마 API를 사용하는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
CMFCBaseVisualManager::FillReBarPane
현재 Windows 테마를 사용하여 철근 컨트롤의 배경을 채웁니다.
virtual void FillReBarPane(
CDC* pDC,
CBasePane* pBar,
CRect rectClient);
매개 변수
pDC
[in] 디바이스 컨텍스트에 대한 포인터입니다.
pBar
[in] 배경을 그려야 하는 창에 대한 포인터입니다.
rectClient
[in] 채울 영역의 경계 사각형입니다.
Return Value
테마 API를 사용하는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
CMFCBaseVisualManager::GetStandardWindowsTheme
현재 Windows 테마를 가져옵니다.
virtual WinXpTheme GetStandardWindowsTheme();
Return Value
현재 선택한 Windows 테마 색입니다. 다음 열거형 값 중 하나일 수 있습니다.
WinXpTheme_None
- 테마를 사용할 수 없습니다.WinXpTheme_NonStandard
- 비표준 테마가 선택됩니다(테마가 선택되었지만 아래 목록에서는 없음).WinXpTheme_Blue
- 파란색 테마 (루나).WinXpTheme_Olive
- 올리브 테마.WinXpTheme_Silver
- 실버 테마입니다.
CMFCBaseVisualManager::UpdateSystemColors
창, 도구 모음, 단추 등 다양한 컨트롤을 그리기 위한 핸들을 가져오는 호출 OpenThemeData
입니다.
void UpdateSystemColors();
설명
내부 전용.