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

Поясните одну вещь в методе TButtonGlyph.CreateButtonGlyph   Найти похожие ветки 

← →
Ega23 ©   (2007-03-09 15:46) [0]

В самом начале задана константа
const
 ROP_DSPDxax = $00E20746;

которая потом используется в BitBlt в качестве параметра dwRop.
Как её "разобрать" на составляющие?


← →
MBo ©   (2007-03-09 16:34) [1]

это тернарная побитовая операция
Ternary Raster Operations в MSDN, подробнее в книге Фень Юаня
запись стековая, польская обратная
операнды
D - приемник
S - источник
P - Pattern
операции в данном случае все двухместные
x - XOR, a - AND
могу ошибиться с порядком действий (операнды кладутся в стек в порядке записи или наоборот), но примерно так:
Destination := ((P xor D) and S) xor D


← →
Ega23 ©   (2007-03-09 16:49) [2]


> запись стековая, польская обратная
> операнды
> D - приемник
> S - источник
> P - Pattern
> операции в данном случае все двухместные
> x - XOR, a - AND


А... Теперь понятно.
Борис, большое спасибо!



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

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



Память: 0.45 MB
Время: 0.013 c
15-1176182477
vajo
2007-04-10 09:21
2007.05.06
Samsung представил двойника Renault Koleos


2-1176808029
Клара
2007-04-17 15:07
2007.05.06
Отчет


15-1176088761
Steep
2007-04-09 07:19
2007.05.06
Delphi 2006


2-1176804348
likenoother
2007-04-17 14:05
2007.05.06
обозначение углов


10-1132155332
Paranorm
2005-11-16 18:35
2007.05.06
Использование COM-объекта юзером с ограниченными правами




   Наверх