QT中在子widget中绘制图形

class PaintWidget:public QWidget
{
public:
PaintWidget(QWidget*parent=0)
}
然后在cpp中写
PaintWidget::PaintWidget(QWidget*parent):QWidget(parent)
前面的*parent=0 和
cpp中的(QWidget*parent):QWidget(parent)含义:

意思是说,重定义父对象。
如何重定义呢?看parent参数。
当PaintWidget放到某个窗口上的时候,该PaintWidget的父对象就被重定义为该窗口。
但是,由于PaintWidget本身继承于QWidget,那么还需要对QWidget的父对象重定义。PaintWidget通过parent指针来告诉父类QWidget:“我的父对象是该窗口,
请把你的父对象也置为那个窗口”。
就是这样。。。
请注意区分父类和父对象的区别。

实例如下:当我将一个widget控件提升为自定义的一个函数的时候;才能将我们写的类和控件之间建立起相应的联系。
但对于QtCreater  使用UI工具设计的界面:在mainwindows中添加widget等控件时,新创建的控件继承于QWidget,所以需要Qwidget的父类对象重定义。
因此需要在类的构造函数参数中添加 QWidget *parent = 0;并且在构造函数中继承QWidget类。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值