QT基础(二)窗口部件

区分窗口部件和子部件

窗口部件:没有父部件的部件,也称为顶部件。
子部件:嵌入在窗口的部件。

#include<QtWidgets>

int main(int argc,char *argv[])
{
    QApplication a(argc,argv);
    QWidget *widget=new QWidget();
    widget->setWindowTitle(QObject::tr("我是widget"));
    QLabel *label=new QLabel();
    label->setWindowTitle(QObject::tr("我是label"));
    label->setText(QObject::tr("label:我是个窗口"));
    label->resize(180,20);
    QLabel *label2= new QLabel(widget);
    label2->setText(QObject::tr("label2:我不是独立窗口,只是widget的字部件"));
      label2->resize(250,20);
       label->show();
       widget->show();
       int ret=a.exec();
       delete label;
       delete widget;
       return ret;

}

运行结果:
在这里插入图片描述
其中widget、label为窗口,label2为子部件。因为在程序中定义了一个QWidget类对象的指针widget和两个QLabel对象指针label与label2,其中label没有父窗口(没有父窗口就是窗口),而label2在widget中,widget是其父窗口。

注意:代码中使用new操作符为label2分配了空间,但是并没有使用delete释放,是因为Qt中销毁父对象的时候会自动销毁子对象。

设置窗口部件QWigdet格式
修改创建对象的那个两行代码:

0QWidget *widget=new QWidget(0,Qt::Dialog);
QLabel *label=new QLabel(0,Qt::SplashScreen);

运行结果:
在这里插入图片描述
(1)在现实生活中会遇到各式各样的窗口,在程序示例中有一个Window Flags演示了所有窗口类型。
(2)还可以用setWindowState()函数设置窗口widget的状态。具体可参考手册。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值