BaluBig
Full Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Varyag_Nord ОК. Тогда так. Прежде всего тебе нужен объект Graphics. Его можно создать "насильно" через метод CreateGraphics интересующего контрола (на поверхности которого соберемся рисовать). Но как правило это не нужно, т.к. все рисование мы должны выполнять в обработчике события Paint интересующего нас контрола, а там объект Graphics передается в классе аргументов события (PaintEventArgs). Pen и Brush нужно создать самостоятельно, при чем за этими объектами стоят небесконечные неуправляемые ресурсы, поэтому их нужно создавать как можно меньше и вовремя освобождать вызовом Dispose. Еще. Объект Graphics отлично умеет работать с координатами, выраженными вещественными числами, поэтому при рисовании не стоит заморачиваться с округлением. Для работы с координатами в вещественных числах имеются соответствующие структуры: PointF, RectangleF, SizeF итд. Соответственно методы для рисования имеют перегрузки для работы с вещественными числами. На примере Graphics.DrawLine: DrawLine(Pen, Point, Point) DrawLine(Pen, PointF, PointF) DrawLine(Pen, Int32, Int32, Int32, Int32) DrawLine(Pen, Single, Single, Single, Single) |