Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.06;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.02 c
1-16489
VladimirC
2004-01-26 17:23
2004.02.06
Outlook


6-16558
Alien
2003-12-02 07:10
2004.02.06
Как по IP узнать сетевое имя компа.... и наоборот


1-16471
Fom
2004-01-27 19:10
2004.02.06
Как сделать выход из функции типа return C?


7-16770
Fidgety
2003-11-22 10:15
2004.02.06
Как эмитировать клик мыхой?


1-16369
Builder
2004-01-26 23:46
2004.02.06
TComboBox