我遇到了一點問題,難道只是我或者你不能將資源中的圖像分配給TSpeedButton的標誌符號而沒有可怕的黑色輪廓,如下所示?是否有可能去除TSpeedButton字形周圍的醜陋輪廓?
我已經爲TImage組件分配了完全相同的方式,並且得到了所需的結果。
我一直在尋找相當長的一段時間,但沒有人似乎有這個奇怪和煩人的問題。
下面是下面的表格我的源代碼:
procedure TForm3.Button1Click(Sender: TObject);
var r : tresourcestream; png : tpngimage;
begin
r := tresourcestream.CreateFromID(hinstance,34,'cardimage');
png := tpngimage.Create;
png.LoadFromStream(r);
png.AssignTo(image1.Picture.bitmap);
png.AssignTo(speedbutton1.glyph);
png.Free;
r.Free;
end;
34是類型「cardimage」,其涉及圖像被顯示在畫面如果尚未猜到的圖像。
的問題是顯然的是,阿爾法通道在左圖中被忽略。 – 2011-03-14 22:52:30
一般來說,你應該調用'X.Assign(Y)',而不是'Y.AssignTo(X)'。如果'TX'不知道如何從TY獲取屬性,它將自動通過調用'Y.AssignTo(X)'來遵循'TY'。但是如果'TY'不知道如何將自己分配給一個'TX',它就不會推遲到目標對象。 – 2011-03-15 01:19:22