在qwidget中使用布局

时间:2011-05-31 10:02:32

标签: linux qt

我在RHEL 6.0上使用qt 4.7。我发现使用te布局很困难。这是我的代码。

我有两个使用网格布局排列的小部件。

QWidget *topWidget = new QWidget();
QWidget *bottomwidget = new QWidget();

这两个小部件包含在QFrame中。所以现在我想在上面两个小部件的b / w中添加一个QPhonon :: VideoPlayer小部件。添加我这样做..

VideoPlayer *vPlayer = new VideoPlayer(Phonon::VideoCategory,this);
vPlayer->setSizePolicy(QSizeHint::Expanding, QSizeHint::Expanding);
QVBoxLayOut *layOut = (QVBoxLayOut*)ui->frame->layout();
layout->insertWidget(1,vPlayer,5,Qt::AlignCenter);

所有topWidget的大小,boottomWidget是768和576,这是D1视频帧的大小。我正在vPlayer phonon小部件中播放视频。但我所看到的是vPlayer尺寸非常小,视频尺寸也很小。意味着我没有看到768/576大小的视频。有人能帮助我吗?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

1)

QVBoxLayOut *layOut = (QVBoxLayOut*)ui->frame->layout();

不要使用C风格的演员阵容!使用

dynamic_casr<QVBoxLayout*>(ui->frame->layout())

2)尝试vPlayer-&gt; setMinimumSize(QSize(500,500))

3)据我所知Qt,如果你想改变GUI或构建复杂的GUI,那么首选构建GUI本身,而不是QtDesigner。