ちらつきをなくすために、wxPaintDC の代わりに wxBufferedPaintDC を使用します。しかし、問題が発生します。私のペイント関数では、キュービック ベイザー カーブを描画するために、GetGraphicsContext を使用してパスを作成する必要があります。私の質問は、wxBufferedPaintDC を使用しているときに GetGraphicsContext が NULL ポインターを返す理由です。
void DotGraphView::OnPaint(wxPaintEvent & WXUNUSED(evt))
{
wxBufferedPaintDC dc(this);
PrepareDC(dc);
PaintBackground(dc);
wxGCDC &gdc = (wxGCDC&)dc;
wxGraphicsContext * gc = gdc.GetGraphicsContext(); /* here gc = NULL */
wxGraphicsPath path = gc->CreatePath(); /* program collapses here */
...
}