본문 바로가기

Windows/MFC

CButtonEx skin 관련 fix

HKEY openKey;
wchar_t pszValue[_MAX_PATH];    // 값이 반환될 변수         
DWORD dwType    = REG_SZ;        // 찾는값의 TYPE
DWORD dwCount    = _MAX_PATH;    // 반환될 값의 길이

// 테마의 정보가 들어있는 Path 위치
CString szRegPath(L"Software\\Microsoft\\Windows\\CurrentVersion\\ThemeManager\\");
memset(pszValue, 0, sizeof(pszValue));

RegOpenKey(HKEY_CURRENT_USER, szRegPath, &openKey);
RegQueryValueEx(openKey, L"ThemeActive", 0, &dwType, (LPBYTE)pszValue, &dwCount);
RegCloseKey(openKey);    

int nWindowSkin = _wtoi(pszValue);
m_resize_rect.top -= parentRect.top;

// window skin 값이 0 이면 고전 스타일이므로 버튼에
// 위치를 맞추기 위해서 +7 을 해준다.
if (!nWindowSkin)
{
    m_resize_rect.top +=7;
}

'Windows > MFC' 카테고리의 다른 글

홈페이지 소스 가져오기  (0) 2013.10.02
찬찬히 보면 좋을듯  (0) 2013.10.02
Virtual Folder  (0) 2013.10.02
_stat  (0) 2013.10.02
파일 크기 알기 _filelength , _fileno  (0) 2013.10.02