本文整理汇总了C++中OpenThemeData函数的典型用法代码示例。如果您正苦于以下问题:C++ OpenThemeData函数的具体用法?C++ OpenThemeData怎么用?C++ OpenThemeData使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了OpenThemeData函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: THEMING_EditSubclassProc
/**********************************************************************
* The edit control subclass window proc.
*/
LRESULT CALLBACK THEMING_EditSubclassProc (HWND hwnd, UINT msg,
WPARAM wParam, LPARAM lParam,
ULONG_PTR dwRefData)
{
const WCHAR* themeClass = WC_EDITW;
HTHEME theme;
LRESULT result;
switch (msg)
{
case WM_CREATE:
result = THEMING_CallOriginalClass (hwnd, msg, wParam, lParam);
OpenThemeData( hwnd, themeClass );
return result;
case WM_DESTROY:
theme = GetWindowTheme( hwnd );
CloseThemeData ( theme );
return THEMING_CallOriginalClass (hwnd, msg, wParam, lParam);
case WM_THEMECHANGED:
theme = GetWindowTheme( hwnd );
CloseThemeData ( theme );
OpenThemeData( hwnd, themeClass );
break;
case WM_SYSCOLORCHANGE:
theme = GetWindowTheme( hwnd );
if (!theme) return THEMING_CallOriginalClass (hwnd, msg, wParam, lParam);
/* Do nothing. When themed, a WM_THEMECHANGED will be received, too,
* which will do the repaint. */
break;
case WM_NCPAINT:
theme = GetWindowTheme( hwnd );
if (!theme) return THEMING_CallOriginalClass (hwnd, msg, wParam, lParam);
nc_paint (theme, hwnd, (HRGN)wParam);
break;
case WM_ENABLE:
case WM_KILLFOCUS:
case WM_SETFOCUS:
theme = GetWindowTheme( hwnd );
if (theme) RedrawWindow (hwnd, NULL, NULL,
RDW_FRAME | RDW_INVALIDATE | RDW_UPDATENOW);
return THEMING_CallOriginalClass (hwnd, msg, wParam, lParam);
default:
/* Call old proc */
return THEMING_CallOriginalClass (hwnd, msg, wParam, lParam);
}
return 0;
}
开发者ID:GYGit,项目名称:reactos,代码行数:56,代码来源:theme_edit.c
示例2: memset
void threaded_process_v2_t::refresh_title_font()
{
LOGFONT lf;
memset(&lf, 0, sizeof(LOGFONT));
m_titlecolour = GetSysColor(COLOR_WINDOWTEXT);
HTHEME thm_textstyle = IsThemeActive() && IsAppThemed() ? OpenThemeData(get_wnd(), L"TextStyle") : NULL;
if (thm_textstyle)
{
if (SUCCEEDED(GetThemeFont(thm_textstyle, NULL, TEXT_MAININSTRUCTION, 0, TMT_FONT, &lf)))
{
m_titlefont = CreateFontIndirect(&lf);
GetThemeColor(thm_textstyle, TEXT_MAININSTRUCTION, NULL, TMT_TEXTCOLOR, &m_titlecolour);
}
CloseThemeData(thm_textstyle);
}
if (!m_titlefont.is_valid())
{
uGetIconFont(&lf);
lf.lfWeight = FW_BOLD;
m_titlefont = CreateFontIndirect(&lf);
}
m_titlefont_height = uGetFontHeight(m_titlefont);
}
开发者ID:reupen,项目名称:ipod_manager,代码行数:26,代码来源:helpers.cpp
示例3: GetClientRect
CRect CPropPageFrameDefault::CalcCaptionArea()
{
CRect rect;
GetClientRect(rect);
if (IsAppThemed())
{
HTHEME hTheme = OpenThemeData(m_hWnd, L"Tab");
if (hTheme)
{
CRect rectContent;
CDC *pDc = GetDC();
GetThemeBackgroundContentRect(hTheme, pDc->m_hDC, TABP_PANE, 0, rect, rectContent);
ReleaseDC(pDc);
CloseThemeData(hTheme);
if (GetShowCaption())
rectContent.bottom = rect.top+GetCaptionHeight();
else
rectContent.bottom = rectContent.top;
rect = rectContent;
}
}
else
{
if (GetShowCaption())
rect.bottom = rect.top+GetCaptionHeight();
else
rect.bottom = rect.top;
}
return rect;
}
开发者ID:AJH16,项目名称:TortoiseGit,代码行数:33,代码来源:PropPageFrameDefault.cpp
示例4: OpenThemeData
void CToolBarTreeView::Draw()
{
const int& cx = m_mdc.cx;
const int& cy = m_mdc.cy;
if (IsAppThemed())
{
HTHEME hTheme = OpenThemeData(m_hWnd, L"TREEVIEW");
ASSERT(hTheme);
RECT rc = {0, 0, cx, cy};
DrawThemeBackground(hTheme, m_mdc, LBCP_BORDER_NOSCROLL, LBPSN_NORMAL, &rc, NULL);
CloseThemeData(hTheme);
// TODO: detect size of border (check for high DPI)
DrawRect(m_mdc, 1, 1, cx - 2, SCY(24), GetSysColor(COLOR_BTNFACE), 96);
DrawRect(m_mdc, 1, 1 + SCY(24) - 1, cx - 2, 1, GetSysColor(COLOR_BTNFACE), 192);
}
else
{
RECT rc = {0, 0, cx, cy};
FillSolidRect(m_mdc, &rc, GetSysColor(COLOR_WINDOW));
FillSolidRect(m_mdc, 1, 1, cx - 2, SCY(24), GetSysColor(COLOR_BTNFACE));
DrawEdge(m_mdc, &rc, EDGE_SUNKEN, BF_RECT);
}
}
开发者ID:anlarke,项目名称:MovieExplorer,代码行数:25,代码来源:ToolBarTreeView.cpp
示例5: ASSERT
int CPopupFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
m_hThemeDLL = ::LoadLibrary(_T("uxtheme.dll"));
if (m_hThemeDLL != NULL)
{
m_pfnDrawThemeBackground = (PFN_DrawThemeBackground)::GetProcAddress(m_hThemeDLL, "DrawThemeBackground");
ASSERT(m_pfnDrawThemeBackground != NULL);
if(m_pfnDrawThemeBackground != NULL)
{
OpenThemeData();
}
else
{
::FreeLibrary(m_hThemeDLL);
m_hThemeDLL = NULL;
}
}
GetSystemSettings();
DWORD dwStyle = GetStyle();
m_cxFrameWidth = (dwStyle & WS_THICKFRAME) ? GetSystemMetrics(SM_CXSIZEFRAME) : GetSystemMetrics(SM_CXFIXEDFRAME);
m_cyFrameHeight = (dwStyle & WS_THICKFRAME) ? GetSystemMetrics(SM_CYSIZEFRAME) : GetSystemMetrics(SM_CYFIXEDFRAME);
return 0;
}
开发者ID:JackWangCUMT,项目名称:SuperCxHMI,代码行数:29,代码来源:PopupFrame.cpp
示例6: cell
/********************************************
WriteText
Purpose
Provides a more straightforward way to draw text by wrapping all the calls required into the dll,
as well as using our theme data mappings to find the core info required. Was called DrawText,
but the preprocessor insisted on changing it to DrawTextA, which then obviously would not compile
Params
hwnd - the HWND of the control we draw to, or NULL
hdc - the device context for the dll to draw to
type - the cell type to draw
state - the state of the cell ( selected, current, etc )
text - the text to draw
textLength - the number of characters to draw
textFlags - the text style to use when drawing the text area
pRect - the rect to draw text into
Return
A bool to indicate success or failure, which is used to control drawing in the old style throughout the library
*********************************************/
bool UGXPThemes::WriteText(HWND hwnd, HDC hdc, UGXPCellType type,
UGXPThemeState state, LPCTSTR text, int textLength, DWORD textFlags, const RECT *pRect)
{
bool success = false;
if (useThemes)
{
UGThemeData * td = LookupThemeData(type, state);
if (!td)
{
return false;
}
HANDLE hTheme = OpenThemeData(hwnd, td->GetThemeName());
if(hTheme)
{
USES_CONVERSION;
success = SUCCEEDED(DrawThemeText(hTheme, hdc, td->GetPartID(), td->GetStateID(), T2W((LPTSTR)text), textLength, textFlags, 0, pRect));
// CloseThemeData(hTheme);
success = true;
}
}
return success;
}
开发者ID:Wanghuaichen,项目名称:SignalProcess,代码行数:46,代码来源:UGXPThemes.cpp
示例7: OpenThemeData
/********************************************
WriteText
Purpose
Provides a more straightforward way to draw text by wrapping all the calls required into the dll,
as well as using our theme data mappings to find the core info required. Was called DrawText,
but the preprocessor insisted on changing it to DrawTextA, which then obviously would not compile
Params
hwnd - the HWND of the control we draw to, or NULL
hdc - the device context for the dll to draw to
theme - the name of the theme to use
partId - the theme part to draw
stateId - the state of the part to draw
text - the text to draw, which is converted from a char * to a wide string in this method.
textLength - the number of characters to draw
textFlags - the text style to use when drawing the text area
pRect - the rect to draw text into
Return
A bool to indicate success or failure, which is used to control drawing in the old style throughout the library
*********************************************/
bool UGXPThemes::WriteText(HWND hwnd, HDC hdc, LPCTSTR theme, int partID,
int stateID, LPCTSTR text, int textLength, DWORD textFlags, const RECT *pRect, bool useCache)
{
bool success = false;
if (useThemes)
{
USES_CONVERSION;
HANDLE themeHandle = OpenThemeData(hwnd, T2W((LPTSTR)theme), useCache);
if (themeHandle)
{
HRESULT hr = DrawThemeText(themeHandle, hdc, partID, stateID, T2W((LPTSTR)text), textLength, textFlags, 0, pRect);
success = SUCCEEDED(hr);
if (!useCache)
{
CloseThemeData(themeHandle);
}
}
}
return success;
}
开发者ID:Wanghuaichen,项目名称:SignalProcess,代码行数:45,代码来源:UGXPThemes.cpp
示例8: drawCheckboxPart
static HRESULT drawCheckboxPart(HRESULT hr, struct drawState *s)
{
uiTableValue *value;
int checked, enabled;
HTHEME theme;
if (hr != S_OK)
return hr;
if (s->p->checkboxModelColumn == -1)
return S_OK;
value = uiprivTableModelCellValue(s->model, s->iItem, s->p->checkboxModelColumn);
checked = uiTableValueInt(value);
uiFreeTableValue(value);
enabled = uiprivTableModelCellEditable(s->model, s->iItem, s->p->checkboxEditableModelColumn);
theme = OpenThemeData(s->t->hwnd, L"button");
if (theme != NULL) {
hr = drawThemedCheckbox(s, theme, checked, enabled);
if (hr != S_OK)
return hr;
hr = CloseThemeData(theme);
if (hr != S_OK) {
logHRESULT(L"CloseThemeData()", hr);
return hr;
}
} else {
hr = drawUnthemedCheckbox(s, checked, enabled);
if (hr != S_OK)
return hr;
}
return S_OK;
}
开发者ID:NoSuchProcess,项目名称:libui,代码行数:33,代码来源:tabledraw.cpp
示例9: NcAreaInitializeTheme
VOID NcAreaInitializeTheme(
_Inout_ PEDIT_CONTEXT Context
)
{
Context->CXWidth = PhMultiplyDivide(20, PhGlobalDpi, 96);
Context->BrushNormal = GetSysColorBrush(COLOR_WINDOW);
Context->BrushHot = CreateSolidBrush(RGB(205, 232, 255));
Context->BrushPushed = CreateSolidBrush(RGB(153, 209, 255));
if (IsThemeActive())
{
HTHEME themeDataHandle;
if (themeDataHandle = OpenThemeData(Context->WindowHandle, VSCLASS_EDIT))
{
//IsThemePartDefined_I(themeDataHandle, EP_EDITBORDER_NOSCROLL, EPSHV_NORMAL);
GetThemeInt(
themeDataHandle,
EP_EDITBORDER_NOSCROLL,
EPSHV_NORMAL,
TMT_BORDERSIZE,
&Context->CXBorder
);
CloseThemeData(themeDataHandle);
}
}
else
{
Context->CXBorder = GetSystemMetrics(SM_CXBORDER) * 2;
}
}
开发者ID:TETYYS,项目名称:processhacker2,代码行数:33,代码来源:searchbox.c
示例10: theme_changed
/* update theme after a WM_THEMECHANGED message */
static LRESULT theme_changed (const STATUS_INFO* infoPtr)
{
HTHEME theme = GetWindowTheme (infoPtr->Self);
CloseThemeData (theme);
OpenThemeData (infoPtr->Self, themeClass);
return 0;
}
开发者ID:ccpgames,项目名称:wine,代码行数:8,代码来源:status.c
示例11: uiprivUpdateImageListSize
// TODO run again when the DPI or the theme changes
// TODO properly clean things up here
// TODO properly destroy the old lists here too
HRESULT uiprivUpdateImageListSize(uiTable *t)
{
HDC dc;
int cxList, cyList;
HTHEME theme;
SIZE sizeCheck;
HRESULT hr;
dc = GetDC(t->hwnd);
if (dc == NULL) {
logLastError(L"GetDC()");
return E_FAIL;
}
cxList = GetSystemMetrics(SM_CXSMICON);
cyList = GetSystemMetrics(SM_CYSMICON);
sizeCheck.cx = cxList;
sizeCheck.cy = cyList;
theme = OpenThemeData(t->hwnd, L"button");
if (theme != NULL) {
hr = GetThemePartSize(theme, dc,
BP_CHECKBOX, CBS_UNCHECKEDNORMAL,
NULL, TS_DRAW, &sizeCheck);
if (hr != S_OK) {
logHRESULT(L"GetThemePartSize()", hr);
return hr; // TODO fall back?
}
// make sure these checkmarks fit
// unthemed checkmarks will by the code above be smaller than cxList/cyList here
if (cxList < sizeCheck.cx)
cxList = sizeCheck.cx;
if (cyList < sizeCheck.cy)
cyList = sizeCheck.cy;
hr = CloseThemeData(theme);
if (hr != S_OK) {
logHRESULT(L"CloseThemeData()", hr);
return hr;
}
}
// TODO handle errors
t->imagelist = ImageList_Create(cxList, cyList,
ILC_COLOR32,
1, 1);
if (t->imagelist == NULL) {
logLastError(L"ImageList_Create()");
return E_FAIL;
}
// TODO will this return NULL here because it's an initial state?
SendMessageW(t->hwnd, LVM_SETIMAGELIST, LVSIL_SMALL, (LPARAM) (t->imagelist));
if (ReleaseDC(t->hwnd, dc) == 0) {
logLastError(L"ReleaseDC()");
return E_FAIL;
}
return S_OK;
}
开发者ID:NoSuchProcess,项目名称:libui,代码行数:60,代码来源:tabledraw.cpp
示例12: CloseThemeData
LRESULT CPopupFrame::OnThemeChanged(WPARAM, LPARAM)
{
if (m_hThemeDLL != NULL)
{
CloseThemeData();
OpenThemeData();
}
return 0;
}
开发者ID:JackWangCUMT,项目名称:SuperCxHMI,代码行数:10,代码来源:PopupFrame.cpp
示例13: SetTimer
int LTIndefProgressBar::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CWnd::OnCreate(lpCreateStruct) == -1)
return -1;
SetTimer(PROGRESS_TIMER, 30, NULL);
h_ThemeBar = OpenThemeData(m_hWnd, L"PROGRESS");
// TODO: Add your specialized creation code here
return 0;
}
开发者ID:sudanthaa,项目名称:LogTool,代码行数:11,代码来源:LTIndefProgressBar.cpp
示例14: LookupThemeData
/********************************************
DrawBackground
Purpose
Provides a more straightforward way to draw a background by wrapping all the calls required into the dll,
as well as using our theme data mappings to find the core info required.
Params
hwnd - the HWND of the control we draw to, or NUL
hdc - the device context for the dll to draw to
type - the cell type we want to draw
state - the state of the cell we want to draw
pRect - represents the area we want to draw to
pClipRect - is exposed, but is almost always NULL
Return
A bool to indicate success or failure, which is used to control drawing in the old style throughout the library
*********************************************/
bool UGXPThemes::DrawBackground(HWND hwnd, HDC hdc, UGXPCellType type,
UGXPThemeState state, const RECT *pRect, const RECT *pClipRect)
{
bool success = false;
if (useThemes)
{
UGThemeData * td = LookupThemeData(type, state);
if (!td)
{
return false;
}
HANDLE hTheme = OpenThemeData(hwnd, td->GetThemeName());
if(hTheme)
{
// If the background is transparent, we draw using the Data cell type first,
// which fills the background. DrawThemeParentBackground just plain does not work
// for us, perhaps because the parent is an owner drawn control ?
// Of course, if the Data cell type has transparency, all we can do is return E_FAILED
if (IsThemeBackgroundPartiallyTransparent(hTheme, td->GetPartID(), td->GetStateID()))
{
if (type == XPCellTypeData) return FALSE;
UGThemeData * tdCell = LookupThemeData(XPCellTypeData, (state == ThemeStatePressed || state == ThemeStateTriState) ? ThemeStateNormal : state);
HANDLE hThemeCell = OpenThemeData(hwnd, tdCell->GetThemeName());
DrawThemeBackground(hThemeCell, hdc, tdCell->GetPartID(), tdCell->GetStateID(), pRect, pClipRect);
}
success = SUCCEEDED(DrawThemeBackground(hTheme, hdc, td->GetPartID(), td->GetStateID(), pRect, pClipRect));
// CloseThemeData(hTheme);
}
}
return success;
}
开发者ID:Wanghuaichen,项目名称:SignalProcess,代码行数:55,代码来源:UGXPThemes.cpp
示例15: part
/********************************************
DrawBackground
Purpose
Provides a more straightforward way to draw a background by wrapping all the calls required into the dll,
as well as using our theme data mappings to find the core info required.
This version still takes a theme name instead of using our lookup
table, it's used in cases where we hard code the theme part ( such a progress bars )
Params
hwnd - the HWND of the control we draw to, or NUL
hdc - the device context for the dll to draw to
theme - the name of the theme to use
iPartId - the theme part to draw
iStateId - the state of the part to draw
pRect - represents the area we want to draw to
pClipRect - is exposed, but is almost always NULL
Return
A bool to indicate success or failure, which is used to control drawing in the old style throughout the library
*********************************************/
bool UGXPThemes::DrawBackground(HWND hwnd, HDC hdc, LPCWSTR theme, int partID,
int stateID, const RECT *pRect, const RECT *pClipRect, bool useCache)
{
bool success = false;
if (useThemes)
{
HANDLE themeHandle = OpenThemeData(hwnd, theme, useCache);
if (themeHandle)
{
// If the background is transparent, we draw using the Data cell type first,
// which fills the background. DrawThemeParentBackground just plain does not work
// for us, perhaps because the parent is an owner drawn control ?
// Of course, if the Data cell type has transparency, this will fail.
if (IsThemeBackgroundPartiallyTransparent(themeHandle, partID, stateID))
{
//RECT temp = *pRect;
UGThemeData * tdCell = LookupThemeData(XPCellTypeData, ThemeStateNormal);
HANDLE hThemeCell = OpenThemeData(hwnd, tdCell->GetThemeName());
DrawThemeBackground(hThemeCell, hdc, partID, stateID, pRect, pClipRect);
}
HRESULT hr = DrawThemeBackground(themeHandle, hdc, partID, stateID, pRect, pClipRect);
success = SUCCEEDED(hr);
if (!useCache)
{
CloseThemeData(themeHandle);
}
}
}
return success;
}
开发者ID:Wanghuaichen,项目名称:SignalProcess,代码行数:56,代码来源:UGXPThemes.cpp
示例16: ASSERT
BOOL AeroControlBase::GetEditBorderColor(HWND hWnd, COLORREF *pClr)
{
ASSERT(pClr);
HTHEME hTheme = OpenThemeData(hWnd, L"Edit");
if(hTheme)
{
VERIFY(S_OK==GetThemeColor(hTheme, EP_BACKGROUNDWITHBORDER, EBWBS_NORMAL, TMT_BORDERCOLOR, pClr));
VERIFY(S_OK==CloseThemeData(hTheme));
return TRUE;
}
return FALSE;
}
开发者ID:yuexiaoyun,项目名称:tortoisesvn,代码行数:14,代码来源:AeroControls.cpp
示例17: DrawGlowingText
//绘制发光文字
void DrawGlowingText(HDC hDC, int IDC)
{
HWND hWnd = GetDlgItem(g_hMainWnd, IDC);
char szText[128] = {0};
GetWindowText(hWnd, szText, 128);
RECT rcArea;
GetWindowRect(hWnd, &rcArea);
DWORD dwTextFlags = DT_LEFT | DT_VCENTER | DT_SINGLELINE;
int iGlowSize = 10;
//获取主题句柄
HTHEME hThm = OpenThemeData(GetDesktopWindow(), L"TextStyle");
//创建DIB
HDC hMemDC = CreateCompatibleDC(hDC);
BITMAPINFO bmpinfo = {0};
bmpinfo.bmiHeader.biSize = sizeof(bmpinfo.bmiHeader);
bmpinfo.bmiHeader.biBitCount = 32;
bmpinfo.bmiHeader.biCompression = BI_RGB;
bmpinfo.bmiHeader.biPlanes = 1;
bmpinfo.bmiHeader.biWidth = rcArea.right - rcArea.left;
bmpinfo.bmiHeader.biHeight = -(rcArea.bottom - rcArea.top);
HBITMAP hBmp = CreateDIBSection(hMemDC, &bmpinfo, DIB_RGB_COLORS, 0, NULL, 0);
if (hBmp == NULL) return;
HGDIOBJ hBmpOld = SelectObject(hMemDC, hBmp);
//绘制选项
DTTOPTS dttopts = {0};
dttopts.dwSize = sizeof(DTTOPTS);
dttopts.dwFlags = DTT_GLOWSIZE | DTT_COMPOSITED;
dttopts.iGlowSize = iGlowSize; //发光的范围大小
//绘制文本
RECT rc = {0, 0, rcArea.right - rcArea.left, rcArea.bottom - rcArea.top};
DWORD dwNum = MultiByteToWideChar (CP_ACP, 0, szText, -1, NULL, 0);
wchar_t *pwText;
pwText = new wchar_t[dwNum];
MultiByteToWideChar (CP_ACP, 0, szText, -1, pwText, dwNum);
HRESULT hr = DrawThemeTextEx(hThm, hMemDC, TEXT_LABEL, 0, pwText, -1, dwTextFlags , &rc, &dttopts);
if(FAILED(hr)) return;
BitBlt(hDC, rcArea.left, rcArea.top, rcArea.right - rcArea.left,
rcArea.bottom - rcArea.top, hMemDC, 0, 0, SRCCOPY | CAPTUREBLT);
//Clear
SelectObject(hMemDC, hBmpOld);
DeleteObject(hBmp);
DeleteDC(hMemDC);
CloseThemeData(hThm);
}
开发者ID:EndlessCheng,项目名称:AirSound,代码行数:50,代码来源:AirSoundServer.cpp
示例18: makeCheckboxImageList
HIMAGELIST makeCheckboxImageList(HWND hwnddc, HTHEME *theme)
{
if (*theme != NULL) {
HRESULT res;
res = CloseThemeData(*theme);
if (res != S_OK)
xpanichresult("error closing theme", res);
*theme = NULL;
}
// ignore error; if it can't be done, we can fall back to DrawFrameControl()
if (*theme == NULL) // try to open the theme
*theme = OpenThemeData(hwnddc, L"button");
if (*theme != NULL) // use the theme
return newCheckboxImageList(hwnddc, themeSize, themeImage, *theme);
// couldn't open; fall back
return newCheckboxImageList(hwnddc, dfcSize, dfcImage, *theme);
}
开发者ID:graibn,项目名称:ui,代码行数:18,代码来源:imagelist_windows.c
示例19: OpenThemeData
BOOL CPropPageFrameDefault::OnEraseBkgnd(CDC* pDC)
{
if (IsAppThemed())
{
HTHEME hTheme = OpenThemeData(m_hWnd, L"TREEVIEW");
if (hTheme)
{
CRect rect;
GetClientRect(rect);
DrawThemeBackground(hTheme, pDC->m_hDC, 0, 0, rect, nullptr);
CloseThemeData(hTheme);
}
return TRUE;
}
else
{
return CWnd::OnEraseBkgnd(pDC);
}
}
开发者ID:AJH16,项目名称:TortoiseGit,代码行数:19,代码来源:PropPageFrameDefault.cpp
示例20: OpenThemeData
bool UGXPThemes::GetThemeRect(LPCWSTR theme, int iPartId, int iStateId, RECT *pRect)
{
bool success = false;
if (useThemes)
{
HANDLE themeHandle = OpenThemeData(NULL, theme);
if (themeHandle)
{
//const int TMT_DEFAULTPANESIZE = 5002;
//HRESULT hr = GetThemeRect(themeHandle, iPartId, iStateId, TMT_DEFAULTPANESIZE, pRect);
HRESULT hr = GetThemeRect(themeHandle, iPartId, iStateId, 5002, pRect);
success = SUCCEEDED(hr);
}
}
return success;
}
开发者ID:fdiskcn,项目名称:LollyMFC,代码行数:19,代码来源:UGXPThemes.cpp
注:本文中的OpenThemeData函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论