原生duilib库重写lable控件,实现文字跑马灯滚动显示

该博客介绍了如何基于duilib库派生新的CLabelUI类,创建名为LabelScroll的控件。新控件不仅具备基本的Label功能,还添加了文字跑马灯滚动显示功能,滚动速度可由XML属性控制。当文字为空时,跑马灯会自动停止。文中提供了详细的步骤,包括派生类定义、接口重载、XML解析及属性设置等,并给出了相关代码资源链接。
摘要由CSDN通过智能技术生成

要点如下:

1. 基于duilib自己的 CLabelUI类,派生出了一个新类

2. 给新类自定义一个名字,比如:

#define DUI_CTR_LABEL_SCROLL (_T("LabelScroll"))

3. 重载 GetClass()和GetInterface()函数,注意把第2步自定义的名字加上

4. 重载 SetAttribute()函数,在这个函数里,可以增加自己自定义的属性。

5. 在CDialogBuilder类里面,加上创建CLabelScroll 类的代码。注意,这里是根据第2步定义的名字长度,在对应的位置new CLabelScroll。

6. CPaintManagerUI类里面,同Lable一样,不能获得焦点

7. 最后,UIlib.h文件中,包含刚才派生的CLabelScroll 类所属文件。

这样,别的工程在xml中,就可以根据第2不设置的类型,来创建这个从Lable派生的控件啦。

===============================分割线===============================

派生出来的lable控件,具有以下功能:<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值