• 10935阅读
  • 3回复

qt4中如何在QFrame中绘图? [复制链接]

上一主题 下一主题
离线xdman
 

只看楼主 倒序阅读 楼主  发表于: 2008-10-24
— 本帖被 XChinux 执行加亮操作(2008-11-02) —
其中CFindFileForm为主窗体。MyDrawFrame为QFrame * ,其包含在主窗体中。

void CFindFileForm::paintEvent(QPaintEvent * event)
{
    QPainter painter(MyDrawFrame);
    painter.setPen(Qt::blue);
    painter.setFont(QFont("Arial", 30));
    painter.drawText(rect(), Qt::AlignCenter,"Qt");
    qDebug()<<"paintEven is ok";
}

执行程序的时候出现如下的提示
QPainter::begin: Widget painting can only begin as a result of a paintEvent
QPainter::setFont: Painter not active
QPainter::end: Painter not active, aborted
paintEven is ok
但是图就是画不出来,请问怎么改?
离线benkei

只看该作者 1楼 发表于: 2008-10-25
应该在MyDrawFrame的::paintEvent(QPaintEvent * event)里做这些事情
离线xdman

只看该作者 2楼 发表于: 2008-10-25
明白楼上的意思,看来没办法偷懒了。谢谢!
离线camel_hawk
只看该作者 3楼 发表于: 2010-09-05
this->setAttribute(Qt::WA_PaintOutsidePaintEvent);
快速回复
限100 字节
 
上一个 下一个