使用QPixmap 保留縱橫比調整QLabel 的大小
要在QLabel 中顯示動態變化的QPixmap,您可能會遇到需要調整大小的情況是基於可用空間的標籤,同時保持QPixmap 的縱橫比。本問題旨在解決這項挑戰,而無需訴諸子類化。
解
要在不使用子類化的情況下實現此功能,可以採用以下方法:
-
設定大小策略:為標籤指派適當的大小策略,例如QSizePolicy::Expanding或QSizePolicy::MinimumExpanding。這允許標籤在其容器內擴展或收縮。
-
動態縮放像素圖:要縮放像素圖,同時在每次變更時保持其縱橫比,請執行下列步驟:
- 取得標籤的目前尺寸(寬度和高度)。
- 利用QLabel::setPixmap() 方法與Qt::KeepAspectRatio 縮放選項將縮放的像素圖設定為
-
程式碼放置:程式碼放置:
程式碼放置:程式碼放置:- 程式碼放置:
程式碼放置:- 程式碼放置:
程式碼放置:
程式碼放置: 程式碼放置:
程式碼放入🎜>此程式碼可以放置在兩個位置:
更新像素圖時在包含標籤的小部件的resizeEvent 處理程序中 透過實作這些步驟,您可以動態調整QLabel 的大小,同時保留其QPixmap 的寬高比,無論可用空間如何,確保影像保持比例和視覺吸引力。
以上是如何在保持縱橫比的同時使用 QPixmap 調整 QLabel 的大小?的詳細內容。更多資訊請關注PHP中文網其他相關文章!