0

小さな16進エディタを書こうとしています。そのために、16 進データを表示し、行ごとにスクロールするウィジェットを作成したいと考えています。そのために、QAbstractScrollArea から派生させ、次のように paintEvent() をオーバーライドすることで実験を開始しました。

void CuteHexeEditorWidget::paintEvent(QPaintEvent *event)
{
    QPainter painter(this);
    QPoint position(50,50);
    QString text("00 11 22");
    painter.drawText(position, text);
}

コードは呼び出されますが、コンソールに次のメッセージが表示されます: QPainter::begin: Paint device returned engine == 0.

4

1 に答える 1

0

QPainterはビューポートで作成する必要があります。

QPainter painter(viewport());
于 2012-08-18T16:27:38.560 に答える