Qt에서 사용자 정의 플러그인을 개발 중이며 거기에 이미지가있는 위젯을 빌드해야하는 상황이 있습니다. 그래서 나는 커스텀 위젯을위한 기본 클래스로서 QLabel을 사용하고있다. 다음은 페인트 이벤트 코드입니다.QLabel에서 이미지 크기를 조정하는 방법
QPixmap pic("/general/source/pic.png");
setAutoFillBackground(true);
QPalette palette;
palette.setBrush(QPalette::Window, QBrush(pic));
this->setPalette(palette);
이제 이미지가 QLabel에 렌더링되지만, 원하는 것은 아닙니다.
- 이미지를 QLabel의 크기로 확대하고 싶습니다.
- QLabel의 크기가 이미지의 크기를 초과하면 이미지가 반복되는 것을 원하지 않습니다.
도와주세요. 당신이 당신이 당신의 QBrush에 전달할 수있는 다른 QPixmap을 반환
pic.scaled (width, height, Qt::IgnoreAspectRatio, Qt::FastTransformation)
를 사용하여 브러시를 설정하기 전에 당신이 당신의 통제 당신이 당신의 픽스맵을 확장 할 수의 크기를 얻을 수 있습니다 가정
이 나를 위해 작동하지하지 않는 QLabel 기능을 사용 :( – chai
정확하게 작동하지 않았다 무엇? 이미지가 확장되지 않았다? 그것은 제대로 확장되지 않았다? 당신이 할 수있는 ' – Liz
좋아 .. 뭐가 잘못되었는지 .. 올바른 코드는 크기 조정 : pic.scaled (너비, 높이, Qt :: IgnoreAspectRatio, Qt :: FastTransformation) 그리고 나서 display scaled – chai