wxWidgets:吸取孩子

时间:2016-01-26 12:50:53

标签: c++ wxwidgets

我如何画出wxPanel的孩子?我使用经典的绘画方式,

class Foo : public wxPanel {
...
    void on_paint(wxEventPaint &) {
        wxPaintDC dc(this);
        ... // stuff with dc
    }
...
}

但效果是我的东西被画了,而孩子被画了。我怎么能这样做呢?画在孩子身上?

我试图取得类似的结果:

What I want

所以我有wxPanel和EVT_PAINT处理程序和wxStaticText作为它的孩子。我得到的是

What I have

如何画出孩子后画画?

或者我应该废弃整个wxStaticText的想法,只使用DrawText?这种方法有什么缺点吗?如果它是相关的,我会使用等宽字体。

1 个答案:

答案 0 :(得分:1)

wxWidgets不支持在本机控件上绘画(或以其他方式干扰他们的绘图),而且永远不会。您应该自己绘制文本或使用完全在wxWidgets中实现的wxGenericStaticText StandardOutput,因此可以自定义,与本机控件不同。