Кажется, wxEffects
был удален из сборки wxWidgets по умолчанию, но без добавления замены для функции TileBitmap
.
Если вы собираете wxWidgets самостоятельно, вы можете включить это, выполнив2.8 сборка совместимости (отредактируйте include/wx/msw/setup.h
перед сборкой).
Однако, если вы просто используете заголовки wxWidgets и предварительно скомпилированные библиотеки, тогда можно было бы добавить собственную версию этой функции.Исходный код здесь , так что вы можете просто скопировать весь bool wxEffectsImpl::TileBitmap
из этого в свою программу, удалить wxEffectsImpl::
и убедиться, что у вас есть правильные заголовки.
Одно из примеров приложений имеет следующую упрощенную версию, которая может работать для вас:
bool TileBitmap(const wxRect& rect, wxDC& dc, wxBitmap& bitmap)
{
int w = bitmap.GetWidth();
int h = bitmap.GetHeight();
int i, j;
for (i = rect.x; i < rect.x + rect.width; i += w)
{
for (j = rect.y; j < rect.y + rect.height; j+= h)
dc.DrawBitmap(bitmap, i, j);
}
return true;
}
Пример фактически сделал его членом MyApp
но вам не нужно этого делать, вы можете просто скопировать его в файл .cpp
, где он вам нужен, и вызвать его напрямую.