Qt如何使用表格?(三)

Qt如何使用表格?(三),第1张

在 上一篇 中表格已经变得工整了不少,不过看上去还是太素了。在这个看脸的时代这是不行的。那怎么办呢?别担心,Qt最擅长就是干这个了。接下来就用Qt的样式表给表格上点颜色

我们从表头开始,先给弄它弄个背景色,另外字体加粗以示区别。

Qt使用setStyleSheet函数来设置部件的样式表。这里QHeaderView表示表头,section表示表头上层的可选中的区域,由于设置了最后一行拉伸,所以是看不到section下一层的界面。

现在看来表头是凸起的,而且也不够高,接着在设置。

这一步加了三个属性及对应的值,第一个border:none去掉了section的边框。第二个height:35px,设置高度为35像素。顺便设置了第三个color:white设置文字的颜色为白色。 这样看上去舒服多了。接下来给表格也设置一些颜色:

这一步给表格设置了三个属性及对应的值,第一个是gridline-color:#2aaee4,设置网格线的颜色,#2aaee4是用十六进制表示颜色的方法。第二个是color:#888,设置文字的颜色,#888相当于#888888。最后一个是border:none去掉了表格边框,这样看起来更清爽一点了。

如果表格中的行数非常多的话,经常会看走眼了。所以我们要设置间隔行颜色不同以示区分。对于表格需要先开启间隔行背景色的功能,默认间隔行背景色是灰色的,我们可以在样式表中控制这个颜色。

在样式表中使用alternate-background-color属性来控制间隔行的颜色。设置的是偶数行的颜色。如果想设置奇数行的颜色可以通过设置表格的背景颜色来实现。

使用Qt *** 作word的步骤:

1. 新建一个文件,在绘制好的表格需要插入数据的地方设置书签(插入-书签),另存为模版文件(.dot),以D:/template.dot为例。

2. 进入QT界面,选择新建工程,在跳出的选项中选择其他项目—空的Qt项目,选择继续。

3. 在main文件中几个主要步骤参考:

1)新建一个word应用程序,并设置为可见.

2)获取所有的工作文档并以文件template.dot为模版新建一个文档

3)获取当前激活的文档。

4)获取文档中名字为text的标签。

5)选中标签,将字符InsertText插入到标签位置。

6)获取文档中名字为pic的标签。

7)选中标签,将图片插入到标签位置。

8)将文件另存为docbyqt.doc,关闭工作文档,退出应用程序。

方法/步骤

首先,我们打开前文所设置的工程项目。

然后,我们在界面设计窗口,加入一个label用于显示,要保存的目录。注意设置下相应的界面布局。

然后,我们在mainwindow.h类中创建一个newExcel的函数,用于实现新建excel的功能。

在对应的cpp文件中,我们要实现newExcel函数功能,首先,按前文的步骤,将application,workbook,worksheet进行赋值并设置。

其中,pApplication->setControl("Excel.Application")用于连接excel控件。pWorkBooks = pApplication->querySubObject("Workbooks")获取workbooks指针。

之后,我们需要用QFile先判断下是否已经存在同名文件,如果没有,我们通过 *** 作excel组件进行创建。file.exist()是判断文件是否存在。如果不存在,我们新建一个excel,然后获取活动的workbook。然后通过dynamicCall调用SaveAs函数进行保存。

然后在构造函数中调用newExcel,我们可以创建一个名字为fileName的excel文件了。

程序运行以后,会d出保存文件的对话框,在其中选择要保存的excel文件名,点击保存之后,会在你选择的路径中创建一个excel文件。

但是,当我们准备删除此文件的时候,会无法完成,这是因为,我们程序中使用pApplication *** 作excel的函数并没有关闭。

9

我们可以在源文件中添加以下代码关闭调用。这样就可以删除了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7983920.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存