QPixmapsに基づいてプロセスマネージャーを作成しようとしています。これらのピックスマップは、20Hzのタイマーコールバックを介して更新されるため、回転しているように見えます。
以下は私の現在のウィンドウのスクリーンショットです。
ピックスマップは、[20][14]要素の2D配列です。20はタイムスライスの量、14はプロセスステータスインジケータです。画面に表示されているのは13個だけです。
私は現在、ペインターオブジェクトとコンポジションモードを使用して、次のコードと一緒にQImagesを追加しています。
QImage textImage(mapIcon.size(), QImage::Format_ARGB32);
QImage resultImage(mapIcon.size(), QImage::Format_ARGB32);
QPainter textPainter(&textImage);
textPainter.setCompositionMode(QPainter::CompositionMode_Source);
textPainter.fillRect(mapIcon.rect(), Qt::black);
textPainter.setCompositionMode(QPainter::CompositionMode_SourceOver);
textPainter.setFont(QFont("Arial", 8, QFont::Bold));
textPainter.setPen(QPen(Qt::white));
textPainter.drawText(QRectF(0, 0, mapIcon.width(), mapIcon.height()),
Qt::AlignCenter, name);
textPainter.end();
QPainter resultPainter(&resultImage);
resultPainter.setCompositionMode(QPainter::CompositionMode_Source);
resultPainter.drawImage(0, 0, mapIcon);
resultPainter.setCompositionMode(QPainter::CompositionMode_Exclusion);
resultPainter.drawImage(0, 0, textImage);
resultPainter.setRenderHint(QPainter::SmoothPixmapTransform, true);
resultPainter.setRenderHint(QPainter::HighQualityAntialiasing, true);
runnerIcons[x][y] = QPixmap::fromImage(resultImage);
私の質問はこれです:私は緑のラベルに見られる逆の配色を望んでいません、私はその色を黒にしたいです。黒地に白は大丈夫ですが、マゼンタは私のお気に入りではありません。
これはQtで可能ですか?または多分あなたは代替ソリューションへのいくつかの提案がありますか?
前もって感謝します。