Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.05;
Скачать: CL | DM;

Вниз

И ещё раз FastDIB :)   Найти похожие ветки 

 
PenguinX ©   (2004-06-22 12:37) [0]

Привет All!
Почему при выполнении следующего кода вылетает AV и CPU Window c указателем в строчке push esi(я в асме не шарю):
----------
....
procedure TForm1.BitBtn1Click(Sender: TObject);
var b1, b2: TFastDIB;
   X, Y: integer;
   C: TFColor;
   CR: COLORREF;
begin
b1 := TFastDIB.Create;
b2 := TFastDIB.Create;
b1.SetSize(Image1.Width, Image1.Height, 24);
for X := 0 to Image1.Width do
for Y := 0 to Image1.Height do begin
C.b := GetBValue(GetPixel(Image1.Canvas.Handle, X, Y));
C.r := GetrValue(GetPixel(Image1.Canvas.Handle, X, Y));
C.g := GetgValue(GetPixel(Image1.Canvas.Handle, X, Y));
b1.SetPixel(Y, X, c);
end;
Rotate90CW(b1, b2);
for X := 0 to Image1.Width do
for Y := 0 to Image1.Height do begin
C := b2.GetPixel(Y, X);
SetPixel(Image2.Canvas.Handle, X, Y, RGB(C.r, C.g, C.b));
end;
end;
....
--------

Если убрать строчку SetSize b1.SetSize(Image1.Width, Image1.Height, 24), то вылетает другая AV с другим адресом и в модуле FastDIB в теле функции GetPixel высвечивается строка d:=Pixels32[y,x].i. Помогите plz избежать ошибок и написать правильный код.


 
MBo ©   (2004-06-22 12:39) [1]

for X := 0 to Image1.Width-1
и для высоты так же


 
PenguinX ©   (2004-06-22 14:47) [2]

2MBo
Огромное Вам спасибо!



Страницы: 1 вся ветка

Текущий архив: 2004.09.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.051 c
1-1092808741
Roadstar
2004-08-18 09:59
2004.09.05
TTreeView


6-1088658782
Артем К.
2004-07-01 09:13
2004.09.05
Присутствует ли в сети компьютер с введенным в edit IP-адресу


8-1087383433
Sanek_metaller
2004-06-16 14:57
2004.09.05
Как отчистить TImage от BitMap a?


3-1092045143
eLVik
2004-08-09 13:52
2004.09.05
Подстановка в конструкторе Access


1-1093090965
Defunct
2004-08-21 16:22
2004.09.05
Как заставить динамически созданный CheckBox переключаться?