Поделиться через


Рисование фигур в форме

Обновлен: Ноябрь 2007

В этом разделе будет рассказано, как рисовать на форме такие фигуры, как прямоугольники или круги.

В предыдущем разделе было рассмотрено, как нарисовать линию на форме с помощью графического метода DrawLine и объекта Pen. Кроме метода DrawLine, Visual Basic поддерживает графические методы для рисования фигур, а также графические объекты, известные как кисти для заполнения фигур.

Рисование простых фигур

Рисование фигуры похоже на рисование линии: необходимо определить координаты и цвет для рисования. Как линия определяется координатами своих начала и конца, так и фигура, например круг или прямоугольник, определяется координатами верхнего левого и правого нижнего углов, шириной и высотой.

Круги и овалы (также называемые эллипсами) не имеют верхних левых углов, поэтому используются координаты, описывающие ограничивающие их прямоугольники, — воображаемые прямоугольники той же ширины и высоты, что круг или овал.

Практическое задание

Рисование фигур

  1. В меню Файл выберите команду Создать проект.

  2. В области Шаблоны в диалоговом окне Создание проекта выберите команду Приложение Windows.

  3. В поле Имя введите Shapes и нажмите кнопку ОК.

    Откроется новый проект Windows Forms.

  4. Дважды щелкните форму, чтобы открыть редактор кода, а затем выберите команду Рисование в раскрывающемся списке События.

  5. В обработчике событий Form1_Paint добавьте следующий код.

    ' Draw a 200 by 150 pixel green rectangle.
    e.Graphics.DrawRectangle(Pens.Green, 10, 10, 200, 150)
    ' Draw a blue square
    e.Graphics.DrawRectangle(Pens.Blue, 30, 30, 150, 150)
    ' Draw a 150 pixel diameter red circle.
    e.Graphics.DrawEllipse(Pens.Red, 0, 0, 150, 150)
    ' Draw a 250 by 125 pixel yellow oval.
    e.Graphics.DrawEllipse(Pens.Yellow, 20, 20, 250, 125)
    
  6. Нажмите клавишу F5 для запуска программы. На форме должны появиться четыре фигуры.

    Оставьте проект открытым – в следующей процедуре необходимо будет внести в него добавления.

Рисование закрашенных фигур

Нарисованные на данный момент фигуры представляют собой только контуры. Для рисования закрашенных фигур необходимо использовать один из методов заливки, например FillRectangle или FillEllipse. В методах заливки используется еще один графический объект для рисования – Brush.

Для заливки фигуры другим цветом необходимо определить координаты точки, лежащей внутри фигуры, иначе могут быть закрашены границы. Например, для заполнения квадрата с координатами 0, 0, 150, 150 необходимо указать для заливки точку с координатами 1, 1, 148, 148 (учитывается, что толщина линии составляет одну точку).

Рисование закрашенных фигур

  1. Добавьте следующий код в обработчик событий Form1_Paint ниже кода, введенного ранее.

    ' Fill the circle with the same color as its border.
    e.Graphics.FillEllipse(Brushes.Red, 0, 0, 150, 150)
    ' Fill the square with a different color.
    e.Graphics.FillRectangle(Brushes.Aquamarine, 31, 31, 148, 148)
    
  2. Нажмите клавишу F5 для запуска программы.

    Обратите внимание, что закрашенный квадрат появляется поверх закрашенного круга, но эта часть его границы исчезла. Порядок вызова графических методов определяет порядок, в котором отображаются результаты их выполнения. В данном случае закрашенный круг был нарисован после прямоугольника с синими границами.

    Попробуйте изменить порядок методов и посмотрите, что произойдет.

Следующие действия

В этом разделе было показано, как рисовать закрашенные фигуры. В следующем разделе будут описаны способы рисования текста с помощью графических методов.

Следующее занятие: Рисование текста в форме

См. также

Задачи

Отображение графики

Другие ресурсы

Рисование изображений. Использование графики

Интерактивный учебник по Visual Basic