Вниз
Скачать: 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
15-1159256648
Sandman29
2006-09-26 11:44
2006.10.15
Коммерсант-Власть


2-1159268728
TrainerOfDolphins
2006-09-26 15:05
2006.10.15
DBNavigator вертикально


3-1155632078
Bless
2006-08-15 12:54
2006.10.15
TADODataSet.Next. Почему так медленно?


2-1159355584
TakTak
2006-09-27 15:13
2006.10.15
вызов функции из DLL динамически.


15-1159027855
alpha5
2006-09-23 20:10
2006.10.15
Не ставится компонент




   Наверх