Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как в общем случае определить, где изменяется значение...


ProgRAMmer Dimonych ©   (2006-11-26 00:09:00) 

переменной. Есть ли в Дельфи такая возможность: контроль за изменениями в определённом объекте, например, TBitmap.

Пишу компонент для вывода т.н. радиальной диаграммы с возможностью реагировать на щелчок по пунктам диаграммы. Использую вспомогательный TBitmap, на котором дублирую рисунок канвы контрола цветами, по которым можно определить, какой из пунктов выбран (типа, RGB(i,0,0), где i-номер рисуемого пункта).

P.S. Появилась бредовая мысль: не моежт ли эта проблема возникать из-за разрядности изображения в TBitmap по умолчанию?

Сам в ближайшее время проверить не смогу: комп - в аварийном режиме закачивает из инета файл, кроме броузера, ничего не могу запустить. К тому же уже появлялась ошибка на "экране смерти", после которой обычно шансы на выживание ОС без перезагрузки равны 0.

Заранее спс.


Zeqfreed   (2006-11-26 01:18:00) [1]

Ну поставь PixelFormat := pf24bit для всех битмапов если есть какие-то сомнения. Вообще мог бы и запостить основной код.


ProgRAMmer Dimonych   (2006-11-26 00:37:00) [2]

Короче говоря, у меня есть TCustomControl, в перекрытом методе Paint которого я рисую окружности на канве самого контрола (не сразу, а через временный Bitmap). Одновременно я прорисовываю другими цветами те же самые фигуры во вспомогательном битмапе - поле компонента. Вспомогательный битмап используется для определения того, кдуа щёлкнул пользователь. Про выбор цветов уже сказано в [0]. Когда поступает WM_LBUTTONDOWN, получаю цвет соответствующей точки на вспомогательном битмапе. Проблема в том, что окружности с цветами RGB(1,0,0), RGB(2,0,0) и т.д. превращаются в (0,0,0). Это може быть из-за разрядности? Просто не могу понять, когда же меняются значения цветов точек.


Zeqfreed   (2006-11-26 00:17:00) [3]

Хм.. Как насчет перечитать то, что ты написал и сформулировать вопрос, а не поток сознания? :)


Anatoly Podgoretsky   (2006-11-26 00:17:00) [4]

> ProgRAMmer Dimonych  (26.11.2006 0:09:00)  [0]

OnChange


Джо   (2006-11-26 00:13:00) [5]

Просьба уточнить (или переформулировать) вот это:
> Есть ли в Дельфи такая возможность: контроль за изменениями
> в определённом объекте, например, TBitmap.

Иначе что-то уж очень неконкретный вопрос выходит, IMO.


Наверх

Титульная страница Поиск, карта сайта Написать письмо