关于 操作COM组件的RGB属性只能传递一个int表达COM三色属性rgb 的解决方法

简介: 关于 操作COM组件的RGB属性只能传递一个int表达COM三色属性rgb 的解决方法

问题

       操作ppt,已经能开始解析,修改形状的背景颜色,传递属性是int类型。

 

解决方法

QColor PptParse::intToRgb(int rgb)
{
    int b = rgb / (256 * 256);
    int g = (rgb - rgb * 256 * 256) / 256;
    int r = rgb - rgb * 256 * 256 - rgb * 256;
    return QColor(r, g, b);
}
int PptParse::rgbToInt(QColor color)
{
    return color.red() + color.green() * 256 + color.blue() * 256 * 256;
}

 

效果

       以下代码是操作当前ppt图形设置填充背景。

 


相关文章
|
6月前
|
C语言
C语言-----计算两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
C语言-----计算两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
|
7月前
|
C语言
[C语言][题]两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同。
[C语言][题]两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同。
51 1
|
7月前
|
存储 C语言
学习总结(位操作符;循环输入的三种方式;交换两个变量值的三种方法;打印数字对应的二进制;unsigned int 与int 的区别;改变特定位数0/1;&&和||的连续操作(与前置,后置结合))
学习总结(位操作符;循环输入的三种方式;交换两个变量值的三种方法;打印数字对应的二进制;unsigned int 与int 的区别;改变特定位数0/1;&&和||的连续操作(与前置,后置结合))
76 0
对int,char,float,double进行求和操作
对int,char,float,double进行求和操作
182 0
YOLO V5出现RuntimeError: result type Float can‘t be cast to the desired output type long int解决方法
YOLO V5出现RuntimeError: result type Float can‘t be cast to the desired output type long int解决方法
705 0
|
Python
Python 空字符串转化问题:ValueError: invalid literal for int() with base 10: ' ',原因及解决方法。
Python 空字符串转化问题:ValueError: invalid literal for int() with base 10: ' ',原因及解决方法。
2921 0
|
Java 安全 C语言
测试AtomicInteger与普通int值在多线程下的递增操作
日期: 2014年6月10日 作者: 铁锚 Java针对多线程下的数值安全计数器设计了一些类,这些类叫做原子类,其中一部分如下: java.util.concurrent.atomic.AtomicBoolean; java.
840 0
|
7月前
|
数据采集 分布式计算 数据处理
Dataphin常见问题之与指定类型int不兼容如何解决
Dataphin是阿里云提供的一站式数据处理服务,旨在帮助企业构建一体化的智能数据处理平台。Dataphin整合了数据建模、数据处理、数据开发、数据服务等多个功能,支持企业更高效地进行数据治理和分析。