Использование пользовательского свойства шрифта.
Чтобы реализовать пользовательское свойство, добавьте его с помощью ClassWizard, а затем вручную измените код:
1.
Загрузите Ваш проект.
2. В меню View выберете ClassWizard.
3. Выберете вкладку Automation.
4. Выберете имя класса из списка Class name.
5. Щелкните на кнопке Add Property.
6. В списке External Name впечатайте нужное свойство, например, HeadingFont.
7. При этом в группе Implementation выберете Get/Set Methods.
8. В списке Return Type выберете LPFONTDISP.
9. Щелкните на кнопке OK для закрытия диалога Add Property.
10. Щелкните на кнопке Ok для закрытия ClassWizard.
ClassWizard создаст код в карте диспетчеризации:
DISP_PROPERTY_EX(CSampleCtrl, "HeadingFont", GetHeadingFont,
SetHeadingFont, VT_DISPATCH)
Макрос DISP_PROPERTY_EX
связывает свойство HeadingFont с соответствующими методами Get and Set - GetHeadingFont and SetHeadingFont. Тип этого свойства - VT_DISPATCH.
ClassWizard также добавляет объявление методов GetHeadingFont и SetHeadingFont в файлы .H, а их реализацию – в файл .CPP:
LPDISPATCH CMyCtrlCtrl::GetHeadingFont()
{
// TODO: Add your property handler here
return NULL;
}
void CMyCtrlCtrl::SetHeadingFont(LPDISPATCH newValue)
{
// TODO: Add your property handler here
SetModifiedFlag();
}
Наконец, ClassWizard изменяет .ODL файл:
[id(1)] IDispatch* HeadingFont;