기본 콘텐츠로 건너뛰기

라벨이 Color Button인 게시물 표시

CMFCColorButton

Palette를 사용하여 Color Pick Bar를 확장하는 것을 알아 보도록 하겠습니다. 말 그대로 선택할 색상들을 이용해 Palette를 생성한 다음 CMFCColorButton에 연결시키면 그걸로 끝~입니다. // get color from table const CString rPaletteFilePath = GetExecPath() + _T("Setting\\PALETTE.TBL"); ifstream ifile(rPaletteFilePath.operator LPCTSTR()); if(ifile.is_open()) { vector<string> oResult; string aLine; while(!ifile.eof()) { getline(ifile , aLine); if(ifile.eof()) break; CTokenizer<CIsComma>::Tokenize(oResult , aLine , CIsComma()); if(3 == oResult.size()) { BYTE bR = atoi(oResult[0].c_str()); BYTE bG = atoi(oResult[1].c_str()); BYTE bB = atoi(oResult[2].c_str()); m_RedEntry.push_back(bR); m_GreenEntry.push_back(bG); m_BlueEntry.push_back(bB); } } const UINT NUM_COLOURS = m_RedEntry.size(); const UINT nSize = sizeof(LOGPALETTE) + sizeof(PALETTEENTRY)*NUM_COLOURS; LOGPALETTE *pLogPalette = (LOGPALETTE*)calloc(nSize , sizeof(BYTE)); pLogPalette->palVersion = 0x300; pLogPalette->palNumEntries = NUM_COLOURS; f...