Qt: QPixmap のアスペクト比を維持するために QLabel のサイズを変更する
サイズを維持しながらサイズを調整する QLabel 内に QPixmap を表示しようとしています。元のアスペクト比。
解決策:
これを実現するには、サブクラス化せずに QSizePolicy メソッドと sizeHint() メソッドを利用できます。
QSizePolicy 調整:
QSizePolicy::Expanding や QSizePolicy::MinimumExpanding など、QLabel に適切なサイズ ポリシーを選択します。これにより、利用可能なスペースに応じてラベルを拡大または縮小できます。
アスペクト比の維持:
QPixmap が変更されるたびに、アスペクト比を維持しながら拡大縮小できます。 :
<code class="cpp">int w = label->width(); int h = label->height(); label->setPixmap(p.scaled(w,h,Qt::KeepAspectRatio));</code>
イベント処理:
このコードを 2 つの重要な場所に追加します:
以上がQPixmap のアスペクト比を維持するために QLabel のサイズを変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。