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

Вниз

Временное отключение OnPaint.   Найти похожие ветки 

 
.: Joiro :. ©   (2002-06-25 12:22) [0]

И очередной вопрос к уважаемым мастакам:

Есть ли возможность на некоторое время остановить перерисовку формы? То есть заставить её НЕ вызывать OnPaint. В этом примере DragGen изменяет вид формы и надо бы чтобы он не менялся до завершения перетаскивания.

procedure TForm1.Dragging(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X,Y: Integer);
const
SC_DRAGMOVE : Longint = $F012;
begin
if ssLeft in Shift then begin
Form1.TransparentColor := True;
DragGen;
ReleaseCapture;
SendMessage(Form1.Handle, WM_SYSCOMMAND, SC_DRAGMOVE, 0);
Form1.Left := Form1.Left div 8*8;
Form1.Top := Form1.Top div 8*8;
Form1.TransparentColor := False;
end;
end;


 
Skier ©   (2002-06-25 12:57) [1]

> .: Joiro :.
А ты попробуй использовать WM_PAINT.
Пишешь свой обработчик на это сообщение и при нужных
тебе условиях выходишь из обработчика, тем самым блокируя
перерисовку.


 
Внук ©   (2002-06-25 13:26) [2]

Событие OnPaint и сообщение WM_PAINT - это сильно разные вещи :) Определитесь, что вам нужно... Первое делается элементарным флагом, второе - написанием собственного обработчика, к примеру (см. Skier © (25.06.02 12:57)).



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
1-23657
Jony
2002-06-25 15:22
2002.07.08
Как программно уничтожать программно созданные компоненты?


3-23467
sniknik
2002-06-14 12:33
2002.07.08
Helycon работа с BCD


6-23706
Ghost.
2002-04-29 13:32
2002.07.08
Сетевая безопасность


1-23632
_Smart
2002-06-24 03:54
2002.07.08
Перетаскивание формы не только за её caption


7-23809
VICTOR_
2002-04-11 15:45
2002.07.08
Помогите найти раздел на системном диске!!!