绘制透明矩形wxWidgets

时间:2015-12-07 16:09:03

标签: c++ c++11 mingw codeblocks wxwidgets

如何使用wxWidgets绘制透明矩形,我尝试使用透明刷,但它不起作用,当我搜索时发现任何使用wxDC的内容都不支持透明因此我必须使用wxGraphicsContext,但当我尝试使用它时,我收到此错误wxGraphicsContext was not declared in this scope,并且它不会对所有platforms起作用,那么什么是最佳解决方案绘制transparent shapes/images,它将适用于大多数platforms

1 个答案:

答案 0 :(得分:2)

正如您已经发现的那样,您需要使用wxGraphicsContext来获得任何非平凡的透明度支持(在wxDC中对它的支持仅限于使用alpha通道绘制位图)。您构建的wxWidgets可能不包含它,因为它在使用MinGW时默认禁用,因为它并不总是带有必要的头文件和库。如果你有它们 - 如果你正在使用MinGW-w64或TDM-GCC,你可能会这样做 - 你必须在构建wxWidgets时明确启用GDI +支持,如果你使用--enable-graphics_ctx选项重新使用configure或直接编辑wx/setup.h文件并将wxUSE_GRAPHICS_CONTEXT设置为1。