【无标题】添加按钮

添加按钮

图上那里错了,是从上往下构造,从下往上析构 

设置父类后,按钮就依存于父窗口,会在父窗口里显示(否则按钮不会在父窗口里),不用调按钮的show方法就可以直接显示

内存自动回收

可以直接new对象,而不管delete的条件:

1、这个类得是从QObject派生下来的;

2、这个对象得给它指定父对象(例如父窗口对象);

满足这两个条件,就可以直接new对象,而不用管delete。在你指定的父对象析构时,new的对象也会被析构。

这个机制是由对象树实现的。

对象树

从上往下构造,从下往上析构

 

 验证自动释放机制(创建一个新的按钮类)

添加一个新的按钮类:

 

 修改继承的父类

头文件

参数的父指针不需要改是因为:QWidget是所有窗口类的父类,所以父指针的类型不用改

源文件

 然后添加析构函数,在里面打印提示信息

 

 

设置窗口标题,大小和图标

setText()   //按钮上的文字

resize()     //设置按钮、窗口的大小

setFixedSize()    //设置窗口固定大小

setWindowIcon()      //设置窗口的图标

setWindowTitle()      //设置窗口的标题

这几个函数是QWidget里的,所有从QWidget派生下来的窗口类都可以用这些函数

所以上面的自定义的按钮类是继承自QPushButton <= QWidget的,所以也可以用这些函数设置大小

当你想到某个功能(例如:要给QPushButton类按钮添加文字),这个功能一定有相应的函数。但QPushButton类中似乎没有这样的成员函数,这时应该到QPushButton的父类:QWidget类中去找。

例如那个resize函数,就不是QPushButton的成员函数,而是QWidget的!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值