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

Вниз

Перерисовка окна   Найти похожие ветки 

 
Tetragrammaton   (2003-12-02 12:03) [0]

Товарищи, помогите разобраться. У меня на форме рисуется определенный рисунок прямо на ее канве. Когда окно перекрывается любым другим окном, то рисунок теряется. Как быть чтобы его не терять?


 
Семен Сорокин ©   (2003-12-02 12:05) [1]

повтори отрисовку в OnPaint


 
Tetragrammaton   (2003-12-02 12:07) [2]

Т.е как?


 
Amoeba   (2003-12-02 12:07) [3]

F1


 
Tetragrammaton   (2003-12-02 12:10) [4]

Нет, я имел ввиду, мне что придетсяодно и тоже делать два раза? Просто функция рисования довольно долшая и если ее каждый раз вызывать, когда по моему окну ползает чужое - то это страх какой-то!


 
Семен Сорокин ©   (2003-12-02 12:13) [5]

Нет, я имел ввиду, мне что придетсяодно и тоже делать два раза? Просто функция рисования довольно долшая и если ее каждый раз вызывать, когда по моему окну ползает чужое - то это страх какой-то!
отрисуй один раз на битмапе, а потом копируй его на экран


 
Tetragrammaton   (2003-12-02 12:14) [6]

А на примере не покажешь?


 
Romkin ©   (2003-12-02 12:15) [7]

Тебе же сказали - OnPaint. А если хочешь быстро, сделай себе TBitmap, нарисуй на нем, а на OnPaint просто копируй на канву


 
Tetragrammaton   (2003-12-02 12:16) [8]

Спасибо...


 
Семен Сорокин ©   (2003-12-02 12:20) [9]

ну может что-то типа этого:

TForm1 = class(TForm)
procedure Form1Paint(Sender: TObject);
procedure Form1Create(Sender: TObject);
procedure Form1Destroy(Sender: TObject);
private
FBmp: TBitmap
procedure MyDraw;
end;

...

procedure Form1.Form1Create(Sender: TObject);
begin
FBmp := TBitmap.Create;
MyDraw
end;

procedure Form1.Form1Destroy(Sender: TObject);
begin
FBmp.Free
end;

procedure Form1.Form1Paint(Sender: TObject);
begin
Canvas.StretchDraw(Canvas.ClipRect, FBmp)
end;

procedure Form1.MyDraw;
begin
// твоя отрисовка на канве битмапа
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
14-36850
Карелин Артем
2003-11-20 14:36
2003.12.12
Знатоки АСМА. Что это за фигня??


7-36881
eRat
2003-10-08 10:49
2003.12.12
блокирование рабочей станции под NT/XP


6-36781
AAZ72
2003-10-15 18:23
2003.12.12
Использование WebBrowser


1-36700
Ptr
2003-12-02 14:08
2003.12.12
Как увеличить переменную типа double на 0.5 ?


1-36604
Relaxxx
2003-12-01 15:32
2003.12.12
Есть ли сочетание букв в слове???