Я создаю пользовательский компонент (производный от TCustomCategoryPanelGroup) и выполняю некоторые пользовательские операции рисования.Я хочу обрабатывать, когда темы включены и рисовать текст соответствующим образом.
Вот фрагмент кода, который у меня есть в функции рисования:
int theBaseDrawFlags = DT_EXPANDTABS | DT_SINGLELINE | DT_VCENTER | DT_LEFT;
theBaseDrawFlags = DrawTextBiDiModeFlags( theBaseDrawFlags );
if ( TCustomCategoryPanelGroup::hsThemed == PanelGroup->HeaderStyle && ThemeServices()->ThemesEnabled )
{
ThemeServices()->DrawText( ACanvas->Handle, ThemeServices()->GetElementDetails( tebNormalGroupHead ), m_CaptionTopLeft, m_TextRect, theBaseDrawFlags, 0 );
}
else
{
// Draw without themes
}
Когда я пытаюсь построить это, я получаю ошибку:
Unresolved external __fastcall Themes::TThemeServices::DrawTextA(HDC__ *, Themes::TThemedElementDetails&, const System::WideString, Types::TRect&, unsigned int, unsigned int)' referenced from ....
AsВы можете видеть, что он ищет DrawTextA
.Я посмотрел на заголовок Themes.hpp и определена только функция ThemeServices::DrawText
.
Я не уверен, что здесь происходит.Возможно, я подумал, что мне не хватает библиотеки импорта, но все остальные функции ThemeServices, которые я использую, не получают ошибок ссылок.
Кто-нибудь знает, что здесь происходит?