Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在Qt中反转或异或一行_C++_Qt_Qpainter - Fatal编程技术网

C++ 在Qt中反转或异或一行

C++ 在Qt中反转或异或一行,c++,qt,qpainter,C++,Qt,Qpainter,我可以在Qt中轻松地绘制一条纯色线,但现在我需要通过反转原始像素或对QBrush进行异或来绘制一条线 我要的是Win32中的SetROP2(R2\u NOT)或SetROP2(R2\u XORPEN) 使用Qt可能吗?我想这样做,以便以后可以轻松地“取消”它。您可以这样做: QPainter dc(widget); dc.setCompositionMode(QPainter::RasterOp_SourceXorDestination); dc.setPen(QColor(0xff, 0xf

我可以在Qt中轻松地绘制一条纯色线,但现在我需要通过反转原始像素或对QBrush进行异或来绘制一条线

我要的是Win32中的
SetROP2(R2\u NOT)
SetROP2(R2\u XORPEN)


使用Qt可能吗?我想这样做,以便以后可以轻松地“取消”它。

您可以这样做:

QPainter dc(widget);

dc.setCompositionMode(QPainter::RasterOp_SourceXorDestination);
dc.setPen(QColor(0xff, 0xff, 0xff));

dc.drawEllipse(center, r1, r2);

描述了其它合成模式。要撤消单个图形操作,这一操作应该完全符合您的要求——只需设置最初使用的同一支笔并重新绘制图形。

Rgb(10,10,10)的反转颜色是什么?请澄清。当与XOR ing一起提到时,它会翻转每一位(按位反转,或C中的~运算符)。