Форум: "Начинающим";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];
ВнизРисование Найти похожие ветки
← →
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 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.069 c