[发明专利]GUI动态布局方法、系统及介质有效
申请号: | 201811190063.2 | 申请日: | 2018-10-12 |
公开(公告)号: | CN109508188B | 公开(公告)日: | 2022-09-06 |
发明(设计)人: | 陈锋;李志洋 | 申请(专利权)人: | 上海金大师网络科技有限公司 |
主分类号: | G06F8/38 | 分类号: | G06F8/38;G06F9/445 |
代理公司: | 北京惠科金知识产权代理有限公司 11981 | 代理人: | 袁晓哲 |
地址: | 201799 上海市青浦*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | gui 动态 布局 方法 系统 介质 | ||
1.一种GUI动态布局方法,其特征在于,包括:
模板类实现步骤:在Qt布局管理器基础上,结合C++模板技术实现一个CBaseLayout模板类;
布局容器生成步骤:令CBaseLayout模板类根据初始化传入的枚举类型和大小自动生成组件布局容器,将组件布局容器存放到内部集合中,获取内部集合;
所述GUI动态布局方法,还包括如下任一个步骤:
布局框架搭建步骤:根据获取的内部集合,通过重写reLayout接口,实现具体自定义布局,搭建完成GUI界面整体布局框架;
自定义组件开发步骤:根据获取的内部集合,进行自定义组件的开发;
所述GUI动态布局方法的具体使用方法如下:
步骤1:CBaseLayout模板类根据初始化传入的枚举类型和大小自动生成组件布局容器;
步骤2:通过重写reLayout虚函数,实现具体自定义布局;并且reLayout接口可动态控制GUI界面整体布局;
GUI界面整体布局框架已经搭建完成,后续自定义组件可并行开发;
步骤3:组件通过调用AddCustomWidget接口添加到指定布局容器中;并且AddCustomWidget接口实现不同组件的动态切换;
步骤4:通过调用HideWidget接口或ShowWidget接口显示或隐藏指定布局容器中的组件;
步骤5:通过调用GetCustomWidget接口可获取指定布局容器中的组件;
所述CBaseLayout模板类被实现为一个C++模板类;
CBaseLayout模板类包括:模板参数class T和模板参数int TMax,模板参数class T表示实例化时传入的枚举类型,根据枚举类型中的枚举元素定义组件布局容器;模板参数intTMax表示枚举最大值,枚举最大值为枚举元素的个数,即组件布局容器的个数;
CBaseLayout模板类还包括:Qt布局管理器集合,即组件布局容器集合,组件布局容器集合的大小由模板参数int TMax决定;
所述布局容器生成步骤:
根据模板参数class T和模板参数int TMax,生成相应个数的组件布局容器并存放到内部集合中;
所述布局框架搭建步骤:
创建一个外部自定义布局容器,并且重新实现reLayout接口,然后根据枚举类型定义依次将内部集合中的组件布局容器添加到外部自定义布局容器中,搭建完成GUI界面整体布局框架;
所述CBaseLayout模板类包括:AddCustomWidget接口、GetCustomWidget接口、HideWidget接口、ShowWidget接口、reLayout接口中的任一个或任多个接口;
AddCustomWidget接口包括:参数T layoutType和参数QWidget*pWidget,根据参数TlayoutType从内部集合中找到相应的组件布局容器,记为指定布局容器,并将参数QWidget*pWidget指向的自定义组件添加到指定布局容器中;
GetCustomWidget接口包括:参数T layoutType,根据参数TlayoutType从内部集合中找到指定布局容器,并获取指定布局容器中的自定义组件;
HideWidget接口包括:参数T layoutType,根据参数T layoutType从内部集合中找到指定布局容器,并隐藏指定布局容器中的自定义组件;
ShowWidget接口包括:参数T layoutType,根据参数T layoutType从内部集合中找到指定布局容器,并显示指定布局容器中的自定义组件;
relayout接口为纯虚函数,要求实例化时重新实现,reLayout接口动态控制GUI界面整体布局。
2.根据权利要求1所述的GUI动态布局方法,其特征在于,所述自定义组件开发步骤包括:
组件添加步骤:调用AddCustomWidget接口将自定义组件添加到指定布局容器中,所述AddCustomWidget接口实现不同组件的动态切换;
组件显示或隐藏步骤:调用HideWidget接口或ShowWidget接口分别显示或隐藏指定布局容器中的自定义组件;
组件获取步骤:调用GetCustomWidget接口获取指定布局容器中的自定义组件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海金大师网络科技有限公司,未经上海金大师网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811190063.2/1.html,转载请声明来源钻瓜专利网。