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

Что вызывать Update или Invalidate?   Найти похожие ветки 

← →
nali   (2006-08-31 21:15) [0]

Привет! Как грамотно вызвать перерисовку определенного
прямоугольника у потомка TWinControl, а точнее у
потомка TCustomGrid.
 При MouseDown в нужном месте такой код:
 ...
 InvalidateCell(X, Y); // аналог InvalidateRect у TCustomGrid
 Update;

Что надо вызывать Update или Invalidate ?


← →
Ketmar ©   (2006-08-31 21:38) [1]

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


← →
Loginov Dmitry ©   (2006-08-31 21:41) [2]

> Что надо вызывать Update или Invalidate ?


А может лучше ни того, ни другого?


← →
Германн ©   (2006-09-01 01:26) [3]


> Что надо вызывать Update или Invalidate ?
>

Ты забыл упомянуть ещё Repaint! А в целом см. [1]


← →
han_malign ©   (2006-09-01 10:17) [4]

см. Loginov Dmitry ©   (31.08.06 21:41) [2]

InvalidateCell(X, Y) - обновит необходимую ячейку(бедет вызван Windows.InvalidateRect для региона ячеки). Update или Invalidate - еще раз обновит отрисовку ВСЕЙ таблицы, что, в большинстве случаев, лишнее...


← →
han_malign ©   (2006-09-01 10:26) [5]

Вру - Invalidate - действительно, (но без еще раз) обновит отрисовку ВСЕЙ таблицы,
а Update просто "насильно пропихнет" отрисовку региона помеченного для обновление по InvalidateCell.
Но - реакцию отображения это улучшит не сильно, а если несколько ячеек обновляется подряд - то еще и ухудшит...



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

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



Память: 0.46 MB
Время: 0.029 c
2-1159193921
root
2006-09-25 18:18
2006.10.15
Нужна помощ!!!!


4-1147513821
parovoZZ
2006-05-13 13:50
2006.10.15
Криво работает окно в dll при вызове из VCL exe


15-1159297031
Cyrax
2006-09-26 22:57
2006.10.15
Как сбилдить проект в Eclipse


1-1156439374
Serega41
2006-08-24 21:09
2006.10.15
Утечки памяти в TShellComboBox


3-1155506976
Hell's Angel
2006-08-14 02:09
2006.10.15
Заполнение БД(FireBird 1.5)




   Наверх