Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.07.13;
Скачать: CL | DM;

Вниз

OnDrawCell в DrawGrid   Найти похожие ветки 

 
Начинающий   (2008-06-14 12:49) [0]

когда наступает? У меня, если в DrawGrid использую SelectCell или Repaint, то прорисовывается. Если програмно меняю значения ячеек и не делаю repaint, то нет. А при Repaint происходит мерцание DrawGrid.  
В связи с этим вопросы:
- как привязать массив к DrawGrid так, чтобы при изменении значений в массиве. происходило автоматическое обновление DrawGrid
- как побороть мерцание при перерисовке DrawGrid


 
{RASkov} ©   (2008-06-14 13:29) [1]

> чтобы при изменении значений в массиве. происходило автоматическое обновление DrawGrid
> - как побороть мерцание при перерисовке DrawGrid

Перерисовывать только изменившиеся ячейки (например, вызовом обработчика OnDrawCell(для каждой обновляемой ячейки(!)) напрямую с передачей нужных параметров)
+, возможно, Doublebuffered...

> когда наступает?

Когда необходимо перерисовать ячейку, координаты которой передаются параметром.... Наступает при сообщении WM_PAINT....


 
Leonid Troyanovsky ©   (2008-06-15 09:58) [2]


> {RASkov} ©   (14.06.08 13:29) [1]

> Перерисовывать только изменившиеся ячейки (например, вызовом
> обработчика OnDrawCell(для каждой обновляемой ячейки(!))

InvalidateCell

> Начинающий   (14.06.08 12:49)  

Invalidate

--
Regards, LVT.


 
Начинающий   (2008-06-15 11:46) [3]


> InvalidateCell

А как вызвать этот метод для DrawGrid? В списке доступных он не значится.


 
Начинающий   (2008-06-15 11:53) [4]

Invalidate и Doublebuffered помогло, мерцать перестало, но, похоже, подтормаживает при перерисовке (хотя, это может быть мое неправильное ощущение :) )

Вопрос по InvalidateCell остался открытым :)


 
Leonid Troyanovsky ©   (2008-06-15 12:03) [5]


> Начинающий   (15.06.08 11:53) [4]

> Вопрос по InvalidateCell остался открытым :)

type
 TCrackGrid = class(TDrawGrid);
..
 TCrackGrid(Grid).InvalidateCell(ACol, ARow);

Только использование InvalidateCell весьма специфично.
Ведь обычно у массива нет представлений о месте, где
отображаются его элементы.

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2008-06-15 12:08) [6]

> Начинающий  (15.06.2008 11:53:04)  [4]

Ну ты выбирай одно из двух, или мерчает, или подтормаживает.


 
Начинающий   (2008-06-15 12:36) [7]

спасибо всем :)



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
15-1211832869
Nic
2008-05-27 00:14
2008.07.13
adobe acrobat reader 64 bit


2-1213607057
Forsaken
2008-06-16 13:04
2008.07.13
Работа с OpenDialog и Zip-подобными архивами.


2-1213621632
snake-as
2008-06-16 17:07
2008.07.13
Простая хэш - функция


2-1213601443
кот
2008-06-16 11:30
2008.07.13
Библиотека с использованием DataModule


2-1213024171
Franzy
2008-06-09 19:09
2008.07.13
Как узнать статус завершения запущенной консольной программы?