Вниз
Скачать: CL | DM;

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

 
dubolom ©   (2006-03-30 18:47) [0]

Как нарисовать что бы то ни было непосредственно на форме?
Код подобный этому ничего не рисует:
dc:=GetDC(Form1.Handle);
//Дальше рисование, например
Rectangle(dc,100,100,200,200);
ReleaseDC(Form1.Handle, dc);


 
Cash ©   (2006-03-30 18:55) [1]

Бр-р-р-р-р.... Ето зачем такой изврат??? :)
У формы есть Canvas, на ней и рисуй! ;)


 
Чародей ©   (2006-03-30 20:07) [2]


> dc:=GetDC(Form1.Handle);

Логично, что ничего не рисует контекст содержит установки контекста формы. Что будет если ты на белом фоне нарисуешь белый квадрат?


 
dubolom ©   (2006-03-30 23:10) [3]

>Бр-р-р-р-р.... Ето зачем такой изврат??? :)
Подобное извращение нужно было для рисования собственных кнопок, которое производилось с помощью функции StretchBlt()

>У формы есть Canvas, на ней и рисуй! ;)
Возможно я чего-то не понимаю, но Canvas не помогает. Может быть пример?

>Логично, что ничего не рисует контекст содержит установки контекста >формы. Что будет если ты на белом фоне нарисуешь белый квадрат?
Предварительная загрузка в контекст ручки и кисти ничего не изменяла.


 
Rial ©   (2006-03-30 23:18) [4]

Операции по прорисовке необходимо поместить в обработчик собития формы OnPaint.

Либо:


procedure TFrom1.Paint;
Var ps:TPaintStruct;
begin
Windows.BeginPaint(Handle,ps);

//Здесь рисуешь что- нибудь.
//С использование любых средств (но форме, чей Handle указал).

Windows.EndPaint(Handle,ps);
end;



 
Гаврила ©   (2006-03-30 23:30) [5]


>dc:=GetDC(Form1.Handle);
>//Дальше рисование, например
>Rectangle(dc,100,100,200,200);
> ReleaseDC(Form1.Handle, dc);


Это абсолютно рабочий пример, который все прекрасно рисует.
Если у тебя не рисует, то по каким-то другим причинам



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
9-1127832954
Chuvak
2005-09-27 18:55
2006.04.16
Эффекты и синхронизация в OpenGL


15-1143447194
Boogier
2006-03-27 12:13
2006.04.16
Не могу скачать Update для Delphi 7.


10-1115878333
Atrion
2005-05-12 10:12
2006.04.16
TWebBrowser...как реализовать функцию window.open


1-1142345678
tesseract
2006-03-14 17:14
2006.04.16
COM-сервер и procedural var


2-1143816098
GODLoki
2006-03-31 18:41
2006.04.16
HELP PLEASE!




   Наверх