我尝试编写一个小的十六进制编辑器。为此,我想创建一个显示十六进制数据并按行滚动的小部件。为此,我开始通过从 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. 我做错了什么?