• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Cchecklistbox Неверно Отображается Под Windows 8

  • Автор темы Автор темы virtpro
  • Дата начала Дата начала
V

virtpro

Есть такая проблема, элементы CCheckListBox в 3-м состоянии не верно отображаются под windows 8 если выбрана обычная тема, если выбрать классическую или контрастную всё становится нормально.
В 3-м состоянии элемент CheckBox должен отображаться как серый квадратик с галкой,


под обычной темой он отображается как просто серый квадратик


Кто-нибудь уже сталкивался с таким поведением?
 
Получилось так:

Получилось сделать так...
Определил функцию заполнения CheckListBox : void FillControls()
в неё вставил код сбрасывания темы

C++:
void ResetTheme()
{
const HMODULE hMod=GetModuleHandle(TEXT("uxtheme.dll"));
if( hMod ) 
{
typedef HRESULT (__stdcall *PFUNC)(HWND,LPCWSTR,LPCWSTR);
PFUNC pFun = (PFUNC)GetProcAddress(hMod, TEXT( "SetWindowTheme" ));
if( pFun ) 
{
const HRESULT hRes =pFun(GetSafeHwnd(), L"", L"");
ASSERT( S_OK == hRes );
}
}
}
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab