本文仅是 学习时记录的笔记,供自己复习时使用。
1.创建好文件(QWidget窗口)
main.cpp中:
注:Widget类继承父类QWidget.
widget.h中:
Widget.cpp中:
打开Forms文件夹中的widget.ui文件:
打开左边编辑:
打开.pro工程文件:
编译后:
1.通过ui界面来设计在界面上显示文字:
2.通过代码在窗口上显示文字(一般在widget构造函数中创建)
new的对象需要delete吗? 不需要!
自己写一个MyLable类来拓展QLable,比如我们想对象析构时,输出一些东西,那么我们新建两个文件:
MyLable.h 和 MyLable.cpp
MyLable.h中:
生成完成后,因为我们要拓展QLable,所以我们需要继承QLable:
而且徐需要在构造函数参数中,加入QWidget参数,这样做的目的是:传递一个QWidget类型的对象指针作为父对象。这将确保创建的MyLable对象会被挂载到父对象的对象树上,并由父对象来管理其生命周期。即父对象销毁时,这个MyLable也会被销毁。
MyLable.cpp中:
具体来说,在给定的代码中,MyLable类继承自QLabel,通过在MyLable的构造函数中添加参数QWidget* parent
,我们将一个QWidget类型的对象指针作为父对象传递给MyLable对象的构造函数。这意味着创建的MyLable对象将成为该QWidget类型对象的子对象,并由父对象在其生命周期内进行管理。
这样当我们build打开窗口 再关闭后,会输出"Lable destory"内容: