我不能用QPainter绘制QVideoWidget

时间:2012-06-05 03:38:27

标签: qt phonon qpainter

我正在尝试绘制字符串,而我有一个视频palying,就像一个副标题...... 我有一个Phonon :: QVideoWidget,在我的构造函数中:

painter = new QPainter(this);

并且我已经将油漆事件覆盖到此,仅用于测试:

void MyVideoWidget::paintEvent(QPaintEvent* event)
{
    painter->drawLine(0, 0, 1, 1);
    //painter-> anything shows
}

因此,当我启动播放器时,我发现QPainter没有看到任何内容,只播放正常的视频 任何想法?

1 个答案:

答案 0 :(得分:0)

QPainter函数中使paintEvent()为本地实例更为常见。

QPainter painter(this);

这会导致自动调用begin()end()方法。这些是QPainter正常工作所必需的。您可以尝试在paintEvent()中手动调用它们,看看是否会产生影响。

您可能尝试在视频上叠加文字的另一件事是在代码中创建QLabel并将您的视频小部件设为其父级。这不需要对视频小部件进行子类化或覆盖绘制事件。