Форум: "Основная";
Текущий архив: 2002.09.16;
Скачать: [xml.tar.bz2];
ВнизTWinControl - запрет перерисовки Найти похожие ветки
← →
d_oleg (2002-09-05 11:52) [0]Как можно "запретить" контролу перерисовывать себя, пока я "работаю" с его детьми? Ну вот допустим у меня есть TPanel, на которой я в run-time создаю объекты (10-15). Каждый из них прорисовывается по мере создания. Это нехорошо. Хочется сделать так, чтобы TPanel со своими новоиспечёнными детьми перерисовалась после моих с нею манипуляций
← →
Кулюкин Олег (2002-09-05 14:19) [1]procedure BeginUpdateControl(AControl: TWinControl);
begin
SendMessage(AControl.Handle, WM_SETREDRAW, 0, 0);
end;
procedure EndUpdateControl(AControl: TWinControl);
begin
SendMessage(AControl.Handle, WM_SETREDRAW, 1, 0);
AControl.Refresh;
end;
← →
d_oleg (2002-09-05 15:53) [2]Спасибо, всё отлично работает. Только я вот что бы подправил:
procedure EndUpdateControl(AControl: TWinControl);
begin
SendMessage(AControl.Handle, WM_SETREDRAW, 1, 0);
RedrawWindow(AControl.Handle, nil, 0, RDW_INVALIDATE or RDW_ERASE or RDW_FRAME or RDW_ALLCHILDREN);
end;
чтобы все дети перерисовывались.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.09.16;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.006 c