[发明专利]实现列表控件的方法和装置有效
申请号: | 201310270240.9 | 申请日: | 2013-06-29 |
公开(公告)号: | CN104252351B | 公开(公告)日: | 2018-04-27 |
发明(设计)人: | 李波 | 申请(专利权)人: | 北京新媒传信科技有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451 |
代理公司: | 北京市隆安律师事务所11323 | 代理人: | 权鲜枝,董垚 |
地址: | 100089 北京市海淀区万*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实现 列表 控件 方法 装置 | ||
技术领域
本发明涉及电子终端技术领域,特别涉及一种实现列表控件的方法和装置。
背景技术
在大部分客户端软件界面的设计开发工作中都会使用到列表型控件。现有的操作系统自带列表控件有列表框(ListBox)、列表控制(ListCtrl)、树控制(TreeCtrl)、组合框(Combobox)、菜单(Menu)等,这些控件通常只能用于显示一系列的文本信息或者图标。如果想让列表控件增加更多的交互功能,例如要在某一列中增加一个小按钮,用于删除该列的话,则需要对该控件进行自绘,或者重写一个列表控件。
对于IM(即时通信)类型客户端,联系人列表的需求改变或者功能增加非常频繁。目前大部分软件仅是采用自绘内部元素的方法,为每个元素维护一个区域。
然而,随着内部元素的增多,元素位置检测、布局、显隐、信息提示等都会变得麻烦,列表型控件的可维护性和可扩展性差。
发明内容
本发明提供了一种实现列表控件的方法和装置,本发明的技术方案使得能够通过增加、删除和修改插件元素,实现列表控件元素的增加、删除和修改操作,方便了开发和使用。
为达到上述目的,本发明公开的一种实现列表控件的方法,包括:
对于列表控件中每个列表项,创建所述列表项对应的根容器和所述列表项中的插件元素,将插件元素添加到根容器中;
通过布局管理器将根容器中的插件元素按设置的方式进行布局;
当通过根容器接收到鼠标对列表控件的操作时,通过鼠标管理器将鼠标的操作通知给操作所作用的插件元素,插件元素根据获知的鼠标的操作进行对应处理。
其中,创建所述列表项中插件元素具体包括:
在插件元素中设置消息通知接口;
所述插件元素根据获知的鼠标的操作进行对应处理具体包括:
当根据鼠标的操作需要调用列表控件之外的功能模块时,通过消息通知接口向该功能模块发送消息。
其中,所述通过布局管理器将根容器中插件元素按设置的方式进行布局具体包括:
通过布局管理器获取根容器中插件元素的布局类型,以及显示插件元素所需的宽度和高度,根据获取的插件元素的宽度、高度和布局类型进行布局。
其中,所述通过鼠标管理器将鼠标的操作通知给操作所作用的插件元素具体包括:
通过鼠标管理器遍历根容器中插件元素,确定出鼠标当前操作所作用的插件元素,将鼠标的操作通知该插件元素。
其中,所述当通过根容器接收到鼠标对列表控件的操作时,通过鼠标管理器将鼠标的操作通知给操作所作用的插件元素具体包括:
当鼠标移动入列表项时,通过列表项将鼠标操作消息通知给该列表项对应的根容器,通过根容器将该鼠标操作消息通知给鼠标管理器;
通过鼠标管理器将该鼠标操作消息通知给位于鼠标下的插件元素,同时开启定时器,如果预设时长内,位于鼠标下的插件元素没有变化,则为该插件元素获取提示内容文本,弹出包含该提示内容文本的提示条。
其中,当创建插件元素时,将创建的插件元素添加到根容器中,通过布局管理器将根容器中插件元素重新布局;
和/或
当删除插件元素时,将删除的插件元素从根容器中删除,通过布局管理器将根容器中剩余插件元素重新布局。
其中,当隐藏列表控件的列表项时,将该列表项对应的根容器隐藏。
本发明进一步公开了一种实现列表控件的装置,包括:
创建单元,用于对于列表控件中每个列表项,创建所述列表项对应的根容器和所述列表项中的插件元素,将插件元素添加到根容器中;
布局单元,用于通过布局管理器将根容器中的插件元素按设置的方式进行布局;
鼠标操作处理单元,用于当通过根容器接收到鼠标对列表控件的操作时,通过鼠标管理器将鼠标的操作通知给操作所作用的插件元素,插件元素根据获知的鼠标的操作进行对应处理。
其中,所述创建单元,用于在插件元素中设置消息通知接口;
所述鼠标操作处理单元,具体用于当根据鼠标的操作需要调用列表控件之外的功能模块时,指示插件元素通过消息通知接口向该功能模块发送消息。
其中,所述鼠标操作处理单元,具体用于当通过根容器接收到鼠标对列表控件的操作时,遍历根容器中插件元素,确定出鼠标当前操作所作用的插件元素,将鼠标的操作通知给该插件元素。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京新媒传信科技有限公司,未经北京新媒传信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310270240.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种导轨用钻孔夹具
- 下一篇:一种发光鞋的控制电路