2指定父对象

Posted gd-luojialin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2指定父对象相关的知识,希望对你有一定的参考价值。

手动创建

添加一个空项目

技术分享图片

选择【choose】进行下一步。设置项目名称和路径 —> 选择编译套件 --> 修改类信息 --> 完成(步骤同上),生成一个空项目。在空项目中添加文件:在项目名称上单击鼠标右键弹出右键菜单,选择【添加新文件】

 技术分享图片技术分享图片

弹出新建文件对话框

 技术分享图片技术分享图片

在此对话框中选择要添加的类或者文件,根据向导完成文件的添加。

 

 

 

.pro文件

QT+=widgets          //确保QT5版本使用

 

 

main.cpp文件

#include <QApplication>

#include <QWidget>

 

int main(int argc,char *argv[])

{

    QApplication App(argc,argv);

 

    QWidget w;

    w.setWindowTitle("QT");      //设置窗口名称

w.show();

 

    return App.exec();

}

 

添加按钮控件

添加头文件:#include <QPushButton>后在main函数中添加以下代码:

QPushButton push;

push.setText("QT");

push.show();

 

 技术分享图片

此时发现,添加按钮控件并不在窗口中。

 

指定父对象

      目的:使按钮控件作为窗口的子对象,在窗口中显示。如果不指定父对象,对象和对象(窗口与窗口)之间相互独立,没有关系。

      A指定b为它的父对象,那么a将放在b的上面

方式:

  1. 利用setParent()函数。
  2. 通过构造函数传参。

注意:指定父对象,只需要父对象显示,上面的子对象自动显示。

代码如下:

//方法一:利用setParent指定父窗体

    QPushButton push;

    push.setParent(&w);    

    push.setText("QT");     //按钮内容

    push.move(100,100);     //按钮位置

    push.show();

 

 

    //方法二:在构造函数中指定父窗体

    /*

    QPushButton push(&w);

    push.setText("QT");

    push.move(100,100);

    push.show();

*/

结果图,可以看到按钮在窗口中,坐标为(100,100)。注意:若不指定坐标则默认为(0,0)。即靠近做上角

 技术分享图片

 

 

 

Main文件源代码:

#include <QApplication>

#include <QWidget>

#include <QPushButton>

 

int main(int argc,char *argv[])

{

    QApplication App(argc,argv);

 

    QWidget w;

    w.setWindowTitle("QT");

 

    //方法一:利用setParent指定父窗体

    QPushButton push;

    push.setParent(&w);

    push.setText("QT");     //按钮内容

    push.move(100,100);     //按钮位置

 

 

    //方法二:在构造函数中指定父窗体

    /*

    QPushButton push(&w);

    push.setText("QT");

    push.move(100,100);

    */

 

    w.show();     //显示窗口,自动显示子对象内容,即不需要push.show()

 

    return App.exec();

}

 

以上是关于2指定父对象的主要内容,如果未能解决你的问题,请参考以下文章

Java面向对象OOP

DOM-Element() 对象

j2ee 面向对象

Qt笔记——入门

Unity 网格合并MeshBaker

QT窗口组件的父子关系