基于Qt开发框架的表格显示方法、装置、系统及介质与流程

文档序号:26087078发布日期:2021-07-30 17:54阅读:166来源:国知局
基于Qt开发框架的表格显示方法、装置、系统及介质与流程

本发明涉及计算机技术领域,尤其涉及基于qt开发框架的表格显示方法、装置、系统及介质。



背景技术:

在设计pc桌面应用的时候,有需要在界面使用表格展示数据的场景,在qt框架中有现存表格控件使用,但是只能满足基本的表格功能,例如对于表格行或列数比较多的情况,仅能通过整体拖动滚动条进行拖动查看,无法根据需要对某些行或列进行锁定,无法实现个性化需求的表格数据显示。

因此,现有技术还有待于改进和发展。



技术实现要素:

鉴于上述现有技术的不足,本发明的目的在于提供基于qt开发框架的表格显示方法、装置、系统及介质,旨在解决现有技术中采用qt开发框架在界面展示表格数据时过于死板无法贴合个性化显示需求的问题。

本发明的技术方案如下:

一种基于qt开发框架的表格显示方法,其包括如下步骤:

获取待显示表格数据并通过qt开发框架内的主窗口类创建主窗口;

根据表格显示指令在所述主窗口中创建若干个表格控件;

分别设置各个表格控件的属性信息,并在各个表格控件中填充相应的待显示表格数据。

所述的基于qt开发框架的表格显示方法中,所述根据表格显示指令在所述主窗口中创建若干个表格控件,包括:

接收表格显示指令并获取所述表格显示指令中固定行和/或固定列的数量与位置;

根据所述固定行和/或固定列的数量与位置在所述主窗口中创建若干个表格控件。

所述的基于qt开发框架的表格显示方法中,所述根据所述固定行和/或固定列的数量与位置在所述主窗口中创建若干个表格控件,具体包括:

在所述主窗口中创建n个表格控件,n=(a+b)*(c+d),其中a为所述固定行的数量,c为所述固定列的数量,b为行数调整因子,d为列数调整因子;

当所述固定行的位置仅位于第一行和/或最后一行时b=1,否则b=2;

当所述固定列的位置仅位于第一列和/或最后一列时d=1,否则d=2。

所述的基于qt开发框架的表格显示方法中,所述分别设置各个表格控件的属性信息,并在各个表格控件中填充相应的待显示表格数据,包括:

获取所述表格显示指令中固定行和/或固定列的位置;

根据所述固定行和/或固定列的位置分别设置各个表格控件的属性信息;

在各个表格控件中填充相应的待显示表格数据。

所述的基于qt开发框架的表格显示方法中,所述根据所述固定行和/或固定列的位置分别设置各个表格控件的属性信息,具体包括:

根据所述固定行和/或固定列的位置分别设置各个表格控件的滚动条属性。

所述的基于qt开发框架的表格显示方法中,所述滚动条属性包括水平滚动条属性和竖直滚动条属性。

所述的基于qt开发框架的表格显示方法中,所述分别设置各个表格控件的属性信息,并在各个表格控件中填充相应的待显示表格数据之后,包括:

检测主窗口的显示尺寸;

根据所述主窗口的显示尺寸自适应调节各个表格控件中待显示表格数据的字体大小。

本发明又一实施例还提供了一种基于qt开发框架的表格显示装置,所述装置包括:

窗口创建模块,用于获取待显示表格数据并通过qt开发框架内的主窗口类创建主窗口;

控件创建模块,用于根据表格显示指令在所述主窗口中创建若干个表格控件;

显示模块,用于分别设置各个表格控件的属性信息,并在各个表格控件中填充相应的待显示表格数据。

本发明又一实施例还提供了一种基于qt开发框架的表格显示系统,所述系统包括至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述基于qt开发框架的表格显示方法。

本发明的另一实施例还提供了一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行上述的基于qt开发框架的表格显示方法。

本发明的另一实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被处理器执行时,使所述处理器执行上述的基于qt开发框架的表格显示方法。

有益效果:本发明公开了基于qt开发框架的表格显示方法、装置、系统及介质,相比于现有技术,本发明实施例通过在qt开发框架内根据表格显示指令灵活设置对应数量的表格控件并分别设置其属性,使得能实现多种个性化需求的表格数据显示,更加贴合不同数据的显示场景,提高表格显示的灵活性与适用范围。

附图说明

下面将结合附图及实施例对本发明作进一步说明,附图中:

图1为本发明提供的基于qt开发框架的表格显示方法较佳实施例的流程图;

图2为本发明提供的基于qt开发框架的表格显示方法应用实施例中表格控件的分布示意图

图3为本发明提供的基于qt开发框架的表格显示方法应用实施例中表格数据显示示意图;

图4为本发明提供的基于qt开发框架的表格显示装置较佳实施例的功能模块示意图;

图5为本发明提供的基于qt开发框架的表格显示系统较佳实施例的硬件结构示意图。

具体实施方式

为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。以下结合附图对本发明实施例进行介绍。

请参阅图1,图1为本发明提供的基于qt开发框架的表格显示方法较佳实施例的流程图。如图1所示,其包括如下步骤:

s100、获取待显示表格数据并通过qt开发框架内的主窗口类创建主窗口;

s200、根据表格显示指令在所述主窗口中创建若干个表格控件;

s300、分别设置各个表格控件的属性信息,并在各个表格控件中填充相应的待显示表格数据。

本实施例中,先通过网络请求等方式获取待显示表格数据,并通过qt开发框架内的主窗口类创建主窗口以进行界面要素和数据的显示,在展示表格数据时,根据用户输入的或者系统预设的表格显示指令在所述主窗口中创建若干个表格控件,并根据所述表格显示指令分别设置各个表格控件的属性信息以满足不同的表格数据显示需求,最终在各个表格控件中填充相应的待显示表格数据,突破现有的单一表格显示,实现基于qt开发框架的个性化需求表格数据显示,更加贴合不同数据的显示场景,提高表格显示的灵活性与适用范围。

进一步地,所述根据表格显示指令在所述主窗口中创建若干个表格控件,包括:

接收表格显示指令并获取所述表格显示指令中固定行和/或固定列的数量与位置;

根据所述固定行和/或固定列的数量与位置在所述主窗口中创建若干个表格控件。

本实施例中,先接收表格显示指令并对其进行解析,获取其中包含的固定行和/或固定列的数量与位置,即用户可根据显示需要任意设置待显示表格数据中指定位置的行,和/或指定位置的列是固定的,固定行和固定列中的数据不随相应方向滚动条的拖动而移动,之后根据当前设置的固定行和/或固定类的数量与位置创建相应数量的表格控件,将单一表格中不同显示需求的区域进行拆分,从而可在后续灵活对其显示属性与效果进行调整,提高表格数据显示的可拓展性。

进一步地,所述根据所述固定行和/或固定列的数量与位置在所述主窗口中创建若干个表格控件,具体包括:

在所述主窗口中创建n个表格控件,n=(a+b)*(c+d),其中a为所述固定行的数量,c为所述固定列的数量,b为行数调整因子,d为列数调整因子;

当所述固定行的位置仅位于第一行和/或最后一行时b=1,否则b=2;

当所述固定列的位置仅位于第一列和/或最后一列时d=1,否则d=2。

本实施例中,在具体创建表格控件时,其数量与分布根据固定行以及固定列的数量与位置而定,a+b为表格控件分布中的行数,c+d为表格控件分布中的列数;具体计算时,固定行与固定列的位置均分为两种情况,以固定行为例,一种情况为固定行的位置仅位于第一行和/或最后一行,即仅有头行和/或尾行固定,此时将行数调整因子取为1,另一种情况为在除头尾行外其它行需要固定时,则行数调整因子取为2,固定列同理;因此根据固定行和固定列的设置情况即可得出表格控件的分布情况,具体请参阅图2,在一应用实施例中,需要固定待显示表格数据中第一列、最后一列以及第一行的数据,根据上述计算方式可知,此时a=1,b=1,c=2,d=1,因此得到n=2*3,以2行3列的布局共构建6个表格控件进行表格数据显示,进而灵活控制不同表格控件中的数据显示情况,贴合不同区域数据的显示需要。

进一步地,所述分别设置各个表格控件的属性信息,并在各个表格控件中填充相应的待显示表格数据,包括:

获取所述表格显示指令中固定行和/或固定列的位置;

根据所述固定行和/或固定列的位置分别设置各个表格控件的属性信息;

在各个表格控件中填充相应的待显示表格数据。

本实施例中,在qt开发框架平台上,根据需要在主窗口中创建了若干表格控件后,获取所述表格显示指令中固定行和/或固定列的位置,根据当前设置的需要固定显示的行列位置分别设置各个表格控件的属性信息,使得在各个表格控件中填充相应的待显示表格数据后可以符合对应位置的显示需要,摆脱了现有qt框架内单一表格显示的劣势,灵活调整不同行以及不同列的表格显示属性。

进一步地,所述根据所述固定行和/或固定列的位置分别设置各个表格控件的属性信息,具体包括:

根据所述固定行和/或固定列的位置分别设置各个表格控件的滚动条属性。

本实施例中,在设置表格控件的属性信息时具体为设置其滚动条数据,其中所述滚动条属性包括水平滚动条属性和竖直滚动条属性,具体实施时,将固定行对应的表格控件的竖直滚动条属性设置为关闭,其余表格控件的竖直滚动条属性设置为开启;将固定列对应的表格控件的水平滚动条属性设置为关闭,其余表格控件的水平滚动条属性设置为开启。

具体请参阅图2,在一应用实施例中,以需要固定待显示表格数据中第一列、最后一列以及第一行的数据为例进行说明,在主窗口10中创建得到了6个表格控件后需分别设置各个表格控件的滚动条属性,此时将表格控件1、表格控件2和表格控件3的竖直滚动条属性设置为关闭,将表格控件4、表格控件5和表格控件6的竖直滚动条属性设置为开启,且优选为联动开启,即通过一个竖直滚动条同时在竖直方向拖动表格控件4、表格控件5和表格控件6中的显示数据;并且将表格控件1、表格控件3、表格控件4和表格控件6的水平滚动条属性设置为关闭,而将表格控件2和表格控件5的水平滚动条属性设置开启,且同样优选为联动开启,通过一个水平滚动条同时在水平方向拖动表格控件2和表格控件5中的显示数据。通过对表格显示区域进行拆分创建表格控件后,灵活根据显示需要设置每个表格控件的滚动条属性,可在保证所有待显示表格数据正常显示的同时满足不同的显示需要,给用户的实际数据查看带来更方便的体验。

进一步地,所述分别设置各个表格控件的属性信息,并在各个表格控件中填充相应的待显示表格数据之后,包括:

检测主窗口的显示尺寸;

根据所述主窗口的显示尺寸自适应调节各个表格控件中待显示表格数据的字体大小。

本实施例中,在进行表格数据显示时,还根据主窗口的显示尺寸自适应调节各个表格控件中待显示表格数据的字体大小,使得用户在通过不同显示属性的表格控件展示数据时能保证表格数据的完整性和匹配度,避免发生显示不完全的情况或者显示区域留白等情况,进一步提高了表格数据显示的兼容性和美观性。

具体请一并参阅图3,举具体应用实施例对本发明提供的基于qt开发框架的表格显示方法进行说明,如图3所示,本实施例中需要在主窗口10中显示表格数据时,令一个表格的开头和末尾一列保持固定,中间部分列可以通过水平滚动条进行滚动查看,即此时固定行的数量为0,固定列的数量为2且均为头尾列,因此得出n=1*3,以1行3列的布局共构建3个表格控件组合来实现一个整体的自定义表格控件,将头尾的第一个表格控件和第三个表格控件的水平滚动条20属性设置为关闭,进而分别固定显示发送状态与群发内容这两列数据,而将中间的第二个表格控件的水平滚动条20属性设置为开启,使得可水平拖动查看中间部分列包括发送类型、发送时间、群发类型以及群发标题等等多列数据,且由于仅开启了一个水平滚动条20,因此从外观上看仍然为一个整体表格控件,满足了显示整体性与美观性的同时也分区域解决了个性化显示需求的问题。

由以上方法实施例可知,本发明提供的基于qt开发框架的表格显示方法通过在qt开发框架内根据表格显示指令灵活设置对应数量的表格控件并分别设置其属性,使得能实现多种个性化需求的表格数据显示,更加贴合不同数据的显示场景,提高表格显示的灵活性与适用范围。

需要说明的是,上述各步骤之间并不必然存在一定的先后顺序,本领域普通技术人员,根据本发明实施例的描述可以理解,不同实施例中,上述各步骤可以有不同的执行顺序,亦即,可以并行执行,亦可以交换执行等等。

本发明另一实施例提供一种基于qt开发框架的表格显示装置,如图4所示,装置1包括:

窗口创建模块11,用于获取待显示表格数据并通过qt开发框架内的主窗口类创建主窗口;

控件创建模块12,用于根据表格显示指令在所述主窗口中创建若干个表格控件;

显示模块13,用于分别设置各个表格控件的属性信息,并在各个表格控件中填充相应的待显示表格数据。

所述窗口创建模块11、控件创建模块12和显示模块13依次连接,具体实施方式请参考上述对应的方法实施例,此处不再赘述。

进一步地,所述控件创建模块12包括:

解析单元,用于接收表格显示指令并获取所述表格显示指令中固定行和/或固定列的数量与位置;

创建单元,用于根据所述固定行和/或固定列的数量与位置在所述主窗口中创建若干个表格控件。

进一步地,所述创建单元具体用于在所述主窗口中创建n个表格控件,n=(a+b)*(c+d),其中a为所述固定行的数量,c为所述固定列的数量,b为行数调整因子,d为列数调整因子;

当所述固定行的位置仅位于第一行和/或最后一行时b=1,否则b=2;

当所述固定列的位置仅位于第一列和/或最后一列时d=1,否则d=2。

进一步地,所述显示模块13包括:

获取单元,用于获取所述表格显示指令中固定行和/或固定列的位置;

设置单元,用于根据所述固定行和/或固定列的位置分别设置各个表格控件的属性信息;

显示单元,用于在各个表格控件中填充相应的待显示表格数据。

进一步地,所述设置单元具体用于根据所述固定行和/或固定列的位置分别设置各个表格控件的滚动条属性。

进一步地,所述基于qt开发框架的表格显示装置还包括:

检测模块,用于检测主窗口的显示尺寸

自适应调节模块,用于根据所述主窗口的显示尺寸自适应调节各个表格控件中待显示表格数据的字体大小。

本发明另一实施例提供一种基于qt开发框架的表格显示系统,如图5所示,系统10包括:

一个或多个处理器110以及存储器120,图5中以一个处理器110为例进行介绍,处理器110和存储器120可以通过总线或者其他方式连接,图5中以通过总线连接为例。

处理器110用于完成系统10的各种控制逻辑,其可以为通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、单片机、arm(acornriscmachine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。还有,处理器110还可以是任何传统处理器、微处理器或状态机。处理器110也可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器结合dsp和/或任何其它这种配置。

存储器120作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的基于qt开发框架的表格显示方法对应的程序指令。处理器110通过运行存储在存储器120中的非易失性软件程序、指令以及单元,从而执行系统10的各种功能应用以及数据处理,即实现上述方法实施例中的基于qt开发框架的表格显示方法。

存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据系统10使用所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至系统10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

一个或者多个单元存储在存储器120中,当被一个或者多个处理器110执行时,执行上述任意方法实施例中的基于qt开发框架的表格显示方法,例如,执行以上描述的图1中的方法步骤s100至步骤s300。

本发明实施例提供了一种非易失性计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上描述的图1中的方法步骤s100至步骤s300。

作为示例,非易失性存储介质能够包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦rom(eeprom)或闪速存储器。易失性存储器能够包括作为外部高速缓存存储器的随机存取存储器(ram)。通过说明丽非限制,ram可以以诸如同步ram(sram)、动态ram、(dram)、同步dram(sdram)、双数据速率sdram(ddrsdram)、增强型sdram(esdram)、synchlinkdram(sldram)以及直接rambus(兰巴斯)ram(drram)之类的许多形式得到。本文中所描述的操作环境的所公开的存储器组件或存储器旨在包括这些和/或任何其他适合类型的存储器中的一个或多个。

本发明的另一种实施例提供了一种计算机程序产品,计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,计算机程序包括程序指令,当程序指令被处理器执行时,使所述处理器执行上述方法实施例的基于qt开发框架的表格显示方法。例如,执行以上描述的图1中的方法步骤s100至步骤s300。

综上所述,本发明公开的基于qt开发框架的表格显示方法、装置、系统及介质中,方法通过获取待显示表格数据并通过qt开发框架内的主窗口类创建主窗口;根据表格显示指令在所述主窗口中创建若干个表格控件;分别设置各个表格控件的属性信息,并在各个表格控件中填充相应的待显示表格数据。本发明实施例通过在qt开发框架内根据表格显示指令灵活设置对应数量的表格控件并分别设置其属性,使得能实现多种个性化需求的表格数据显示,更加贴合不同数据的显示场景,提高表格显示的灵活性与适用范围。

以上所描述的实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存在于计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机电子设备(可以是个人计算机,服务器,或者网络电子设备等)执行各个实施例或者实施例的某些部分的方法。

除了其他之外,诸如"能够"、"能"、"可能"或"可以"之类的条件语言除非另外具体地陈述或者在如所使用的上下文内以其他方式理解,否则一般地旨在传达特定实施方式能包括(然而其他实施方式不包括)特定特征、元件和/或操作。因此,这样的条件语言一般地还旨在暗示特征、元件和/或操作对于一个或多个实施方式无论如何都是需要的或者一个或多个实施方式必须包括用于在有或没有输入或提示的情况下判定这些特征、元件和/或操作是否被包括或者将在任何特定实施方式中被执行的逻辑。

已经在本文中在本说明书和附图中描述的内容包括能够提供基于qt开发框架的表格显示方法、装置、系统及介质的示例。当然,不能够出于描述本公开的各种特征的目的来描述元件和/或方法的每个可以想象的组合,但是可以认识到,所公开的特征的许多另外的组合和置换是可能的。因此,显而易见的是,在不脱离本公开的范围或精神的情况下能够对本公开做出各种修改。此外,或在替代方案中,本公开的其他实施例从对本说明书和附图的考虑以及如本文中所呈现的本公开的实践中可能是显而易见的。意图是,本说明书和附图中所提出的示例在所有方面被认为是说明性的而非限制性的。尽管在本文中采用了特定术语,但是它们在通用和描述性意义上被使用并且不用于限制的目的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1