Пошаговое руководство. Рисование фигур при помощи элементов управления OvalShape и RectangleShape (Visual Studio)

Обновлен: Июль 2008

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

Можно настроить внешний вид фигуры, изменяя ширину, цвет и тип границы. Фон фигуры является прозрачным по умолчанию; можно настроить фон для отображения сплошных цветов, шаблона, градиентной заливки (переход от одного цвета к другому) или изображения.

Чтобы нарисовать простую фигуру на этапе разработки

  1. Перетащите элемент управления OvalShape или RectangleShape из вкладки Visual Basic PowerPacks в Панели элементов на форму или контейнерный элемент управления.

  2. Измените размер и расположение в соответствии с размером и расположением фигуры.

    Можно также изменить размер и расположение фигуры, изменив свойства Size и Position в окне Свойства.

    Чтобы создать прямоугольник со скругленными углами, выберите свойство CornerRadius в окне Свойства и установите его значение, которое должно быть больше 0.

  3. В окно Свойства, можно добавить такие дополнительные свойства, чтобы изменить внешний вид фигуры.

Чтобы нарисовать простую фигуру во время выполнения

  1. В меню Проект щелкните Добавить ссылку.

  2. В диалоговом окне Добавить ссылку, выберите Microsoft.VisualBasic.PowerPacks.VS, и затем нажмите OK.

  3. В Редакторе кода добавьте оператор Imports или usingв начало модуля:

    Imports Microsoft.VisualBasic.PowerPacks
    
    using Microsoft.VisualBasic.PowerPacks;
    
  4. В процедуру Event добавьте следующий код:

    Dim canvas As New ShapeContainer
    ' To draw an oval, substitute 
    ' OvalShape for RectangleShape.
    Dim theShape As New RectangleShape
    ' Set the form as the parent of the ShapeContainer.
    canvas.Parent = Me
    ' Set the ShapeContainer as the parent of the Shape.
    theShape.Parent = canvas
    ' Set the size of the shape.
    theShape.Size = New System.Drawing.Size(200, 300)
    ' Set the location of the shape.
    theShape.Location = New System.Drawing.Point(100, 100)
    ' To draw a rounded rectangle, add the following code:
    theShape.CornerRadius = 12
    
    ShapeContainer canvas = new ShapeContainer();
    // To draw an oval, substitute 
    // OvalShape for RectangleShape.
    RectangleShape theShape = new RectangleShape();
    // Set the form as the parent of the ShapeContainer.
    canvas.Parent = this;
    // Set the ShapeContainer as the parent of the Shape.
    theShape.Parent = canvas;
    // Set the size of the shape.
    theShape.Size = new System.Drawing.Size(200, 300);
    // Set the location of the shape.
    theShape.Location = new System.Drawing.Point(100, 100);
    // To draw a rounded rectangle, add the following code:
    theShape.CornerRadius = 12;
    

Настройка фигур

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

Перед тем, как изменить фон фигуры, следует разобраться, как взаимодействуют некоторые свойства.

  • Параметр свойства BackColor не окажет никакого эффекта, пока значение свойства BackStyle не будет установлено равным Opaque.

  • Если свойство FillStyle установлено равным Solid, свойство FillColor переопределяет BackColor.

  • Если свойство FillStyle установлено равным шаблону с такими значениями, как Horizontal или Vertical, шаблон будет отображен на FillColor. Фон будет отображен в BackColor, предоставленном свойством BackStyle значение которого равно Opaque.

  • Для отображения градиентной заливки, свойство FillStyle следует установить равным Solid и свойство FillGradientStyle должно иметь значение, не совпадающее с None.

  • Установка свойства BackgroundImage равным изображению перегружает все остальные параметры фона.

Чтобы нарисовать круг с нестандартной границей

  1. Перетащите элемент управления OvalShape из вкладки Visual Basic PowerPacks в Панели элементов на форму или контейнерный элемент управления.

  2. В окне Свойства, в свойстве Size, установите равные значения для Height и Width.

  3. Присвойте свойству BorderColor в качестве значения необходимый цвет.

  4. Установите свойство BorderStyle равным любому значению, отличному от Solid.

  5. Присвойте размеру BorderWidth необходимое значение в точках.

Чтобы нарисовать круг со сплошной заливкой

  1. Перетащите элемент управления OvalShape из вкладки Visual Basic PowerPacks в Панели элементов на форму или контейнерный элемент управления.

  2. В окне Свойства, в свойстве Size, установите равные значения для Height и Width.

  3. Присвойте свойству BackColor в качестве значения необходимый цвет.

  4. Установите для свойства BackStyle значение Opaque.

Чтобы нарисовать круг с шаблонной заливкой

  1. Перетащите элемент управления OvalShape из вкладки Visual Basic PowerPacks в Панели элементов на форму или контейнерный элемент управления.

  2. В окне Свойства, в свойстве Size, установите равные значения для Height и Width.

  3. Присвойте свойству BackColor в качестве значения цвет, который нужно сделать фоновым.

  4. Установите для свойства BackStyle значение Opaque.

  5. Присвойте свойству FillColor в качестве значения цвет, необходимый для шаблона.

  6. Установите свойство FillStyle равным любому значению, отличному от Transparent или Solid.

Чтобы нарисовать круг с градиентной заливкой

  1. Перетащите элемент управления OvalShape из вкладки Visual Basic PowerPacks в Панели элементов на форму или контейнерный элемент управления.

  2. В окне Свойства, в свойстве Size, установите равные значения для Height и Width.

  3. Присвойте свойству FillColor в качестве значения цвет, который нужно сделать стартовым.

  4. Присвойте свойству FillGradientColor в качестве значения цвет, который нужно сделать конечным.

  5. Установите значение свойства FillGradientStyle равным значению, отличному от None.

Чтобы нарисовать круг с рисунком в качестве фона

  1. Перетащите элемент управления OvalShape из вкладки Visual Basic PowerPacks в Панели элементов на форму или контейнерный элемент управления.

  2. В окне Свойства, в свойстве Size, установите равные значения для Height и Width.

  3. Выберите свойство BackgroundImage и нажмите кнопку с многоточием (...).

  4. В диалоговом окне Выбор ресурса, выберите рисунок для отображения. Если не перечислено никаких наборов изображений, нажмите Импорт чтобы перейти к местоположению изображения.

  5. Нажмите OK, чтобы вставить изображение.

См. также

Задачи

Пошаговое руководство. Изображение линий при помощи элемента управления LineShape (Visual Studio)

Основные понятия

Знакомство с элементами управления Line и Shape (Visual Studio)

Ссылки

OvalShape

RectangleShape

Журнал изменений

Дата

Журнал изменений

Причина

Июль 2008

Добавлен раздел.

Изменение функции SP1.