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

Вниз

Развертывание окна   Найти похожие ветки 

 
Damager   (2006-05-19 17:49) [0]

При развертывании окно немного дергается, и выглядит это некрасиво.

Можно ли временно отключить прорисовку в момент развертывания? Чтобы получить сразу окно в полный экран.


 
Rial ©   (2006-05-19 18:09) [1]

Отрисовку окна можно отключить вот так.

procedure LockControl(Const C:TWinControl;Const bLock,bMustRepaint:Boolean);
begin
If(C=Nil)or(C.Handle=0) then Exit;
If(bLock)then SendMessage(C.Handle,WM_SETREDRAW,0,0)
         else begin
          SendMessage(C.Handle,WM_SETREDRAW,1,0);
          If (bMustRepaint)then
           RedrawWindow(C.Handle,Nil,0,
                        RDW_ERASE or RDW_FRAME or RDW_INVALIDATE or RDW_ALLCHILDREN);
         end;
end;


Но, скорее всего, проблема не в этом.
Нужно уменьшить количество отрисовываемых элементов в окне или
отрисовывать их постепенно после появления окна в первый раз.

Еще попробуй
DoubleBuffered:=True
для формы и панелей.

Возможно, у тебя в обработчике OnResize формы что - либо громоздкое
написано. А при максимизации этот обработчик быдет вызываться, ИМХО,
4 раза. Так что учти это.



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

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

Наверх




Память: 0.46 MB
Время: 0.046 c
4-1143128232
Alex35
2006-03-23 18:37
2006.06.25
Узнать, что в привод вставили диск


15-1148497229
Kerk
2006-05-24 23:00
2006.06.25
00:00


4-1143146463
Lucefer
2006-03-23 23:41
2006.06.25
Вопросы по обмену сообщениями между TThread ами


2-1149580120
JTAG
2006-06-06 11:48
2006.06.25
Господа подскажите плз, где можно иконки для программы поискать


15-1148965423
Ega23
2006-05-30 09:03
2006.06.25
С Днём рождения! 30 мая