template 类模板 类继承

始:在接触qt界面开发时,需要重新按钮的mousePressEvent事件,且用到的每个qt控件都用到相同的实现,为了避免对每个控件都重写一遍,想到了用类模板来实现。

类模板继承用法:参考

http://c.biancheng.net/view/320.html

http://c.biancheng.net/view/324.html

过程:类模板的基础用法原理是将n个不同类型通过变量来实现class或类型的统一管理。为了实现初衷,那么只要创建一个类模板A并继承需要的qt控件类,在A中实现mousePressEvent事件即可

模板代码:

template <class T>
class A :public T
{
public:
	A() {};
	void mousePressEvent(QMouseEvent *e)
	{
		QWidget::mousePressEvent(e);
		qDebug("类模板鼠标事件") 
	}
};

应用模板类代码:

	auto btn = new A<QLabel>; 
	btn->setParent(this);
	btn->setObjectName("test");
	btn->setText("test");
	btn->move(x, y);
	btn->resize(w, h);
	btn->show();  

结:类模板不仅可以实现类的管理,还能够用于类重载,能够应用与于重写类似qt事件的类

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值