使用Borland C++ Builder 2009我注意到,當替換TImagelist中的圖像時,Alpha通道數據以某種方式被破壞。如何設置TIcon實例以支持Alpha通道圖標(SupportsPartialTransparency)
TIcon *Icon = new TIcon() ;
for (int x = 0 ; x < OS_Specific_count ; x++)
{
OS_xx_ImageList->GetIcon(x, Icon) ;
Use_ImageList->ReplaceIcon(x, Icon) ;
}
delete Icon ;
的問題也被描述(+ screenhots)在另一個Q(TImageList - True color + alpha channel vs. 8-bit (256 colors)),但現在我試圖縮小範圍有更具體的問題。
在幫助文件中瀏覽TIcon時,我注意到一個只讀屬性:SupportsPartialTransparency
。 在我看來,它似乎是false
,我不知道這不是解決這個問題的關鍵嗎? Icon->Transparent = true
不會將SupportsPartialTransparency
設置爲true!
我想知道我能做些什麼來確保TIcon實例正確「獲取」並「替換」alpha通道信息?
ImageLists是在設計時創建的,具有默認屬性(沒有任何更改),幷包含通過IDE導入的16x16圖標。導入的圖標包含Alpha通道信息。
*透明* <> *部分透明*,超過*美元* == *半美元*。您不斷提問有關圖像列表的問題,而不包括該圖像列表的屬性。 –
@KenWhite - 默認設置,16x16圖標 – Peter
什麼是ColorDepth?你把它設置爲CD32?您被要求在您的其他問題中提供完整的MCVE,其中包括表單文件的內容。我看到你還沒有 - 請現在就這樣做。如果你不打算提供詳細信息,那麼我們不太可能會幫助你,並且在某些時候,忽略對更多信息的請求會引發惱人的人。我可以絕對肯定地說,alpha通道圖像正常工作;我的應用程序中有充足的工具欄,我爲我的應用程序使用多種尺寸的Alpha通道圖標。 –