wxWidgets:绘制 child
wxWidgets: Drawing over child
如何绘制wxPanel的child?我正在使用经典的绘画方式,
class Foo : public wxPanel {
...
void on_paint(wxEventPaint &) {
wxPaintDC dc(this);
... // stuff with dc
}
...
}
但效果是我的东西被画了,然后 child 被画在上面了。我该如何做相反的事情?在 child?
上涂漆
我正在努力实现类似的结果:
所以我有带 EVT_PAINT 处理程序的 wxPanel 和 child 的 wxStaticText。我得到的是
画完child后如何画画?
或者我应该放弃整个 wxStaticText 的想法而只使用 DrawText 吗?这种方法有什么缺点吗?如果相关,我正在使用等宽字体。
wxWidgets 不支持在本机控件上绘制(或以其他方式干扰它们的绘制),而且永远不会。您应该自己绘制文本或使用(可能修改的版本)wxGenericStaticText
,它完全在 wxWidgets 中实现,因此可以自定义,这与本机控件不同。
如何绘制wxPanel的child?我正在使用经典的绘画方式,
class Foo : public wxPanel {
...
void on_paint(wxEventPaint &) {
wxPaintDC dc(this);
... // stuff with dc
}
...
}
但效果是我的东西被画了,然后 child 被画在上面了。我该如何做相反的事情?在 child?
上涂漆我正在努力实现类似的结果:
所以我有带 EVT_PAINT 处理程序的 wxPanel 和 child 的 wxStaticText。我得到的是
画完child后如何画画?
或者我应该放弃整个 wxStaticText 的想法而只使用 DrawText 吗?这种方法有什么缺点吗?如果相关,我正在使用等宽字体。
wxWidgets 不支持在本机控件上绘制(或以其他方式干扰它们的绘制),而且永远不会。您应该自己绘制文本或使用(可能修改的版本)wxGenericStaticText
,它完全在 wxWidgets 中实现,因此可以自定义,这与本机控件不同。