Перерисовка элементов формы
Кинул на форму TTabbedNotebook, сделал Align ему clAll, Создал несколько страниц и пр.
Теперь вопрос, какого фига он перерисовывается весь, противно моргая при этом, когда я изменяю размер формы, т.е. тяну за правый нижний угол ?
Вопрос не сильно принципиальный, но...
Кинул на форму TTabbedNotebook, сделал Align ему clAll, Создал несколько страниц и пр.
Теперь вопрос, какого фига он перерисовывается весь, противно моргая при этом, когда я изменяю размер формы, т.е. тяну за правый нижний угол ?
А как ты хотел?!
Размеры изменились, надо перерисовать.
У тебя могут на нем быть элементы управления, которые тоже изменили свой размер или положение.
Может как-то эту перерисовку можно как-нить смягчить?
Может как-то эту перерисовку можно как-нить смягчить?
Не знаю поможет ли в данном конкретном случае, но можно попробовать так:
try
{
// чего-то перерисовываем
}
__finally
{
LockWindowUpdate(NULL);
}
Не знаю поможет ли в данном конкретном случае, но можно попробовать так:
try
{
// чего-то перерисовываем
}
__finally
{
LockWindowUpdate(NULL);
}
Правильно ли я понял, что __finally это тот же самый catch, но используемый ВСЕГДА, а не только в случае ошибок?
Кстати, это дело не пойдёт - тогда пока идёт процесс, мы ничего не увидим - пропадает весь смысл плавного изменения размеров или цвета.
Просто по стандарту раздражает следующий баг при апдейте объекта:
1. иногда на 1 кадр он исчезает
2. иногда такое впечатление, что половина объекта со старым размером/цветом, а другая половина - с новым :(
2. иногда такое впечатление, что половина объекта со старым размером/цветом, а другая половина - с новым :(
Так что насчет буферизации?
Правильно ли я понял, что __finally это тот же самый catch, но используемый ВСЕГДА, а не только в случае ошибок?
Точно, как раз оно и сеть.
Кстати, это дело не пойдёт - тогда пока идёт процесс, мы ничего не увидим - пропадает весь смысл плавного изменения размеров или цвета.
Да, для плавной перерисовки конечно не подойдет...
На мой взгляд мигат из-за того, что прорисовывает все компоненты, начиная с самого нижнего, даже если они не видны. Вопрос в том как сделать так чтоб нижние компоненты не перерисовывались (в данном случае это только канва формы). ControlStyle = clOpaque для формы не помог...