Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Использование CreatePen


Aleksey ©   (2005-10-06 11:04:00) 

Pen:=CreatePen(PS_SOLID,3,FgColor);
OldPen:=SelectObject(CanvasHandle,Pen);
LineTo (CanvasHandle,X,Y);

Рисует простой линией черного цвета, толщиной 1
Что я делаю нета?
Подскажите, плз.


clickmaker   (2005-10-06 13:52:00) [1]

СелектОбъект действует пока
- не сказал ReleaseDC
- не выбрал другой объект того же класса
Ежели юзаешь "чужой" Canvas, то при каждом маусмуве заново выбирай объект, поскольку у VCL могут быть свои виды на канву


Aleksey   (2005-10-06 11:51:00) [2]

Оказывается проблема не в СreatePen и SelectObject
Я рисую в Image.Canvas

Присобытии МоусеДавн я дабавил удаление предидущего пера (которое бало у Image) и стала появлятся точка нужного цвета и правильной толщины.

Но при моусемуве приходится опять делать СелектОбъект, иначе - черная тонкая линия.
Я не понял СелектОбъект че на одно рисование действует? или это Image изменяет Pen? Если Image, то как его отучить?


Гаврила   (2005-10-06 11:45:00) [3]

что возвращают СreatePen и SelectObject ? Результаты проверил?


Aleksey   (2005-10-06 11:35:00) [4]

Че бы я не писал (PS_DOT,PS_DASH, PS_DASHDOTDOT)
Результат как от

Pen:=CreatePen(PS_SOLID,1,$00000000);


Наверх

Титульная страница Поиск, карта сайта Написать письмо