Qt如何设置word文字颜色

问题:

使用Qt操作word不知道如何设置文字的颜色。


解决办法:

在使用Qt时,一般我们都是用QAxObject类来操作word/excel。但是想要设置文字颜色的时候发现并没有setColor或setTextColor这样的函数。事实上office提供的接口中文字颜色是Font对象的一个属性,这点和Qt的思路不一样。因此想要设置颜色就要先获得Font对象,然后调用setProperty设置Color属性。

例如:

QAxObject* selection = word->querySubObject("Selection");
selection->querySubObject("Font")->setProperty("Color",255);
需要注意的是颜色属性是一个枚举值,具体的值可以在网上搜到。

wordcolor.png


另外Font不止是Selection的子对象。更多内容可以参考office的官方文档:
http://msdn.microsoft.com/en-us/library/aa272160%28v=office.11%29.aspx


演示站
上一篇:VS编译Qt程序提示 error MSB6006 cmd.exe已退出 代码为3
下一篇:ERROR 2013 (HY000) Lost connection to MySQL server during query

发表评论