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

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

Наверх




Память: 0.47 MB
Время: 0.024 c
15-1175790951
Pazitron_Brain
2007-04-05 20:35
2007.05.06
Извечный спор: микроядро или монолитное?


1-1173444380
Ega23
2007-03-09 15:46
2007.05.06
Поясните одну вещь в методе TButtonGlyph.CreateButtonGlyph


11-1158513222
skillcoder
2006-09-17 21:13
2007.05.06
[Глюк] Прорисовка контролов в левом верхнем углу


3-1171605638
Merry
2007-02-16 09:00
2007.05.06
IBase: блокировка доступа к редактируемой записи


4-1165311288
Leshiy
2006-12-05 12:34
2007.05.06
Работа с MainMenu "чужого" приложения.