2017-02-15 121 views
0

我想將圖像放在我的Qt GUI中。我所遇到的問題是在圖像加載之後縮放圖像 - 它似乎被縮小了。出現這種情況是因爲fitInView()例程中的錯誤被調用以使圖像適合給定的窗口大小。特別是,在我的重新實施fitInView()有以下行:Qt視窗大小不正確

viewrect = self.viewport().rect() 

viewport().rect()返回不正確的結果,因爲圖像還未被顯示,並會引起Widget有「虛假的大小」,正如在this forum thread中已經指出的那樣。

我發現的可能的解決方案大多在一件事上彼此同意 - 一個必須實現showEvent()例程,該例程將調用fitInView();這樣,圖像將有時間正確加載,並且Widget視口將被設置爲正確的值。我試過:

def showEvent(self, event): 
    self.fitInView() 

該函數被調用後,我選擇我要上傳的圖片,並呼籲self.show()表明圖像。但是,實施showEvent()並未解決問題。有沒有人遇到過這個問題?

回答

-1

解決方案結果與我所嘗試的非常相似。在之後簡單地設置和擬合像素圖調用window.show()已經解決了尺寸問題!還有必要保持showEvent()例程的正常工作。