Forum Replies Created
-
AuthorPosts
-
Freezer
ParticipantПросто в папку с exe'шкой положи acntBCB6_R.bpl, и она запуститься на другой машине.
Это не ошибка AlphaControls, просто почитайте что такое runtime пакеты.
Google вам в помощь))
Freezer
ParticipantЕсли срочно, тогда просто в своем таймере проверяй компоненты, к которым обращаешься, на Nil. Так сможешь пока обойти глюк или же отключать таймер как ты это предлагал ранее.
Freezer
ParticipantУправлять видом компонентов можешь либо ты (рисовать руками на TCanvas), либо скин, либо Система. Что бы отвечала за прорисовку система и это не зависело от системных настроек – не получится. Лучше всего – подправь скин под тот вид, который тебе нравится.
Freezer
Participant'Mike' wrote:Как-то так:
// uses acPNG;
PNGGraphic := TPNGGraphic.Create;
PNGGraphic.LoadFromStream(TFileStream или TMemoryStream);
sAlphaImageList1.Add(P, Nil);
PNGGraphic.Free;
Спасибо за ответ, ваш способ тоже действенный.
Моя ошибка состояла в том что я использовал не TPNGGraphic из acPNG, а TPNGObject из пакета FastReport. Так вот FastReport'овский TPNGObject наследуется не от TBitmap, а от TGraphic. По этому передать его в sAlphaImageList1.Add не получалось. Выкрутился кодом приведенным выше))
Freezer
ParticipantПроблему решил сам, правда пришлось убить 3 часа для экспериментов. Просьба для разработчиков, добавить в документацию информацию поподробнее по TsAlphaImageList.
Если кому-то нужно будет, выкладываю код:
Code://qrStatus : TOraQuery;
//imStatus : TsAlphaImageList;
procedure Load;
var
s : TMemoryStream;
xItem : TsImgListItem;
begin
qrStatus.Close;
qrStatus.Open;
imStatus.Clear;
imStatus.Items.Clear;
imStatus.AcBeginUpdate;
while not qrStatus.Eof do begin
s := TMemoryStream.Create;
TBlobField(qrStatus.FieldByName('PNGIcon')).SaveToStream(s);
s.Position := 0;
xItem := TsImgListItem.Create(imStatus.Items);
xItem.ImageFormat := ifPNG;
xItem.PixelFormat := pf32bit;
xItem.ImgData.LoadFromStream(s);
s.free;
qrStatus.Next;
end{while};
imStatus.AcEndUpdate;
end; -
AuthorPosts