我的主窗體上有幾個TJvImage組件。一個在設計時從部分透明的PNG文件加載。另一個比第一個還小。它在運行時加載另一個部分透明的PNG文件。德爾福2007年 - 從PNG文件加載TJvImage失去透明度
JvImage1.Picture.LoadFromFile ('Logo.png') ;
JvImage1.Transparent設置爲TRUE。問題很簡單:較小的圖像呈現忽略alpha通道 - 即它衝出背景圖像。
當我在設計時加載兩個圖像時不會發生這種情況。它們在窗體上都顯示爲部分透明,並在運行程序時正確顯示。
真正的困境是,寫一個最小的測試程序來試圖證明問題不是顯示的問題,但在應用程序本身的相同代碼不起作用。
是否有任何可能影響行爲的底層主窗體?
我建議你找出問題所在。剝離失敗的代碼,直到它工作。看看dfm文件。爲什麼將Transparent設置爲True?您的圖片有一個Alpha通道。 –
我從來沒有想過你需要設置'透明'爲FALSE才能獲得透明度。現在我明白了! (幫助狀態:「將透明設置爲true以允許TImage對象後面的對象通過圖像的背景顯示。將Transparent設置爲false以使圖像的背景不透明」)。不幸的是,將Transparent設置爲false並不能解決問題。我嘗試創建一個項目並將違規表單的全部內容粘貼到項目中,並且圖像顯示正常。我有一些工作在我面前。 – rossmcm