Пакет функций MFC — C ++ CMFCPropertyGridColorProperty EnableAutomaticButton

Я нашел очень мало документации, когда дело доходит до C ++ Feature Pack, и все примеры, которые я нашел, все являются одним и тем же примером. Проблема, с которой я столкнулся, включает EnableAutomaticButton в цветовой панели. Если я установил цвет по умолчанию на черный, как показано в следующем коде, нажатие кнопки сделает цвет белым (ffffff). После проверки возвращаемого значения я обнаружил, что он возвращает -1, то есть другими словами FALSE и не возвращает черный цвет, но все остальное возвращает правильно, даже цветные фишки во всплывающем окне.

CMFCPropertyGridProperty* pGroup2 = new CMFCPropertyGridProperty(_T("View"));

CMFCPropertyGridColorProperty* pColorProp = new   CMFCPropertyGridColorProperty(_T("Color"), RGB(0, 0, 0), NULL, _T("Specifies the default View color"));
pColorProp->EnableOtherButton(_T("Other..."),TRUE,TRUE);
pColorProp->EnableAutomaticButton(_T("Default"),RGB(0,0,0),TRUE);
pColorProp->SetColor(RGB(0,0,0));
pColorProp->SetColumnsNumber(5);

pGroup2->AddSubItem(pColorProp);

0

Решение

да, GetColor (); вернуть -1 для автоматического выбора. Так что попробуйте что-то вроде: —

m_Colour = m_ColourBut.GetColor();

// Handle the default colour selection.
if (m_Colour == -1)
{
m_Colour = m_ColourBut.GetAutomaticColor();
}
1

Другие решения


По вопросам рекламы [email protected]