1

このコードは、Windows では QRubberBand を青色で描画しますが、MacOS では機能しません。なぜだろう?

QRubberBand *rubberBand = new QRubberBand(QRubberBand::Rectangle, this->imageLabel);
rubberBand->setGeometry(rec);

QPalette palette;
palette.setBrush(QPalette::Highlight, QBrush(Qt::darkBlue));
rubberBand->setPalette(palette);
4

1 に答える 1

3

私はこのように解決しました:

QRubberBand *rubberBand = new QRubberBand(QRubberBand::Rectangle, this->imageLabel);
rubberBand->setGeometry(rec);

QPalette palette;
QColor color(Qt::blue);
color.setAlpha(80);
palette.setBrush(QPalette::Highlight, QBrush(color));
rubberBand->setPalette(palette);

現在、ラバーバンドは MacOS と Windows で同じです。

于 2013-07-16T10:07:11.710 に答える