Вниз
Скачать: CL | DM;

Можно ли сравнит две Icon?   Найти похожие ветки 

 
jonni ©   (2003-09-30 21:10) [0]

у меня есть две Icon. Я хочу сделать что то типа
if Icon=Icon the do something;

возможно ли сравнивать изображения или нет??

зарание спасибо


 
jonni ©   (2003-09-30 21:11) [1]

sorry
if Icon1=Icon2 ..... hotya dumayu i tak ponyatno :)


 
Mihey ©   (2003-09-30 22:08) [2]

Это не вызовет ошибку, но желаемого ты не достигнешь. Увы, даже если изображение одно, объекты имеют отличия.


 
лещ   (2003-09-30 22:12) [3]

Переводи в битмап и сравнивай попиксельно.


 
jonni ©   (2003-09-30 22:39) [4]

potochnee mozhno pro srvnivanie popiksel"no
ideya i bila srazu sravnit" izobrazheniya no ya ne znayu kak :(
mozhno li paru strochek kinut" kak sravnit" popixel"no


 
Mihey ©   (2003-09-30 23:25) [5]

> mozhno li paru strochek kinut" kak sravnit" popixel"no

Пробуй код (ошибки справь сам). Сложность в том, что у TIcon нет канвы :(. Приходится копировать в битмапы.

var x, y: Integer;
Icon1, Icon2: TIcon;
IconBMP1, IconBMP2: TBitmap;
...
IconBMP1 := TBitmap.Create;
IconBMP2 := TBitmap.Create;
IconBmp1.Width := Icon1.Width;
IconBmp1.Height := Icon1.Height;
IconBmp2.Width := Icon2.Width;
IconBmp2.Height := Icon2.Height;
IconBMP1.Canvas.Draw(0, 0, Icon1);
IconBMP2.Canvas.Draw(0, 0, Icon2);
for y := 0 to IconBmp1.Height-1 do
for x := 0 to IconBmp1.Width-1 do
begin
If IconBmp1.Canvas.Pixels[x,y] <> IconBmp2.Canvas.Pixels[x,y] then
begin
ShowMessage("Иконки разные!");
Exit;
end;
end;
IconBMP1.Free;
IconBmp2.Free;


 
jonni ©   (2003-10-01 00:09) [6]

spasibo.... probuyu...

odno toka mne ne nravit"sya...... netu u meny acanvas tozhe :)
u menya toka API..... a kak v etom sluchae ne znaesh sluchay no mozhno oboytis?


 
ZEE ©   (2003-10-01 17:19) [7]

>toka API
вместо Canvas.Pixels[] ставь GetPixel()



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
3-16147
Evyshka
2004-01-15 09:04
2004.02.06
Перевод xml дакумента в dbf файл


14-16732
Baloo
2004-01-16 11:54
2004.02.06
Картинка про Дельфи


4-16836
Sergious
2003-12-01 12:05
2004.02.06
Как перевести монитор в ждущий режим под ХР?


1-16490
andrew_p
2004-01-22 13:58
2004.02.06
Перевод MessageDLG


3-16068
Cerber
2004-01-10 20:15
2004.02.06
Локалки против Клиент серверов




   Наверх