Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема 12. Рисование.doc
Скачиваний:
43
Добавлен:
02.04.2015
Размер:
324.1 Кб
Скачать

Visual c#

// Создать представляющий элемент управления прямоугольник, заданный

// точкой верхнего левого угла и свойством Size.

Rectangle ControlRectangle = new

Rectangle(new PointfO, 0), this.Size);

// Создать новый объект LinearGradientBrush, определяющий переход

// между цветами ForeColor и ForeColorTwo с учетом заданного угла.

LinearGradientBrush myBrush = new

LinearGradientBrush(ControlRectangle,

ForeColor, ForeColorTwo, Angle);

// Создать объект GraphicsPath, хранящий отображаемый текст.

GraphicsPath myPath = new GraphicsPathO;

// Записать в объект GrapnicsPath строку, представляющую текущее врем?'.

myPath.AddString(System.DateTime.Now.ToLongTimeString(),

Font.FontFamily,

(int)Font.Style, Font.Size, new PointfO, 0),

StringFormat.GenericDefault);

// Показать Graphics,

pe.Graphics.FillPath(myBrush, myPath);

Теперь поместите код для создания нового пера из объекта LinearGradientBrush.

Прорисуйте этим пером прямоугольник, представляющий область элемента

управления. Для этого потребуется следующий код:

Visual Basic .Net

1 Создать из объекта myBrush перо толщиной 8 пикселов

Dim myPen As New Pen(my8riish, 8)

и нарисовать им прямоугольник, совпадающий с областью элемента управления,

ре.Graphics,DrawRectangle(rnyPen, ControlRectangle)

Framework Глава 7

Visual C#

// Создато из объекта myBrush перо толщиной 8 пикселов

Реп myPen = new Pen(myBrush, 8);

// и нарисовать им прямоугольник, совпадающий с областью элемента управления.

pe.Graphics.DrawRectangle(myPen, ControlRectangle):

6. Выберите в меню File команду Save All, чтобы сохранить проект.

Сейчас вы добавите в конструктор код, инициализирующий свойства элемента

управления. Кроме того, вы добавите компонент Timer и код для ежесекундной пе-

рерисовки часов и отображения интересного графического эффекта.

^ Настройка компонента Timer

1. В окне Solution Explorer щелкните правой кнопкой компонент PrettyClock к вы-

берите из контекстного меню команду View Designer откроется окно дизайнера.

2. Перетащите компонент Timer с вкладки Windows Forms панели Toolbox на по-

верхность формы.

3. В окне Properties установите свойства Interval в 1000, а свойство Enabled ~ в true.

4. Дважды щелкните компонент Тшегв окне дизайнера, чтобы открыть обработ-

чик событий Timer.Tick, и добавьте к нему следующий код:

Visual Basic .NET

Этот кода изменяет вид графического эффекта при изменении значения Tick.

Angle += 10

Перерисовать элемент управления.

Me.Refresh()

Visual C#

// Этот кода изменяет вид графического зффекта при изменении значения Tick.

Angle +- 10;

// Перерисовать элемент управления.

this.Refresh();

5. В Visual C# необходимо добавить к конструктору элемента управления вызов

метода fnitializeComponent, инициализирующего свойства этого элемента управ-

ления:

Visual C#

public PrettyClockO

{

InitializeComponentO;

}

6. Сохраните проект, выбрав команду Save All в меню File.

Упражнение 2. Тестирование элемента управления

j * Создав элемент управления, необходимо удостовериться, что он работает

правильно. Сейчас вы добавите элемент управления на панель Toolbox и

поместите его на форму. Затем вы настроите вид элемента управления на

панели Toolbox и проверите его работу в период выполнения.

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

> Как добавить элемент управления на панель Toolbox

1. Выполните компоновку решения, выбрав в меню Build команду Build Solution.

2. Щелкните правой кнопкой панель Toolbox и выберите из контекстного меню

команду Customize Toolbox откроется одноименное диалоговое окно Customize

Toolbox.

3. Перейдите на вкладку .NET Framework Components и щелкните кнопку Browse,

чтобы открыть диалоговое окно Open File.

4. Откройте папку, в которой находится проект. В папке \bin (Visual Basic .NET)

или \bin\Debug (Visual C#) выберите файл ControlTest.exe (компилированный

файл элемента управления). Чтобы продолжить, щелкните ОК.

5. Убедитесь, что элемент управления PrettyClock указан в списке диалогового окна

Customize Toolbox и помечен флажком. Щелкните ОК.

** Как протестировать элемент управления

1. В окне Solution Explorer щелкните правой кнопкой форму Fortnl и выберите из

контекстного меню команду View Designer эта форма откроется в окне дизай-

нера.

2. Перетащите элемент управления PrettyClock с панели Toolbox на форму к фор-

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

3. Установите для свойств нового экземпляра PrettyClock, перечисленных в табли-

це 7-8, необходимые значения.

Таблица 7-8. Свойства элемента управления PrettyClock

Свойство Значение

ForeColor Red

ForeColorTwo Yellow

Font.Size 40

Size 225, 50

Обратите внимание, что при модификации значений свойств изменения всту-

пают в силу немедленно и результаты сразу же отображаются на форме.

4. Убедитесь, что форма обновляется ежесекундно, изменяя вид цветового перехо-

да. Для этого нажмите.К5, чтобы запустить приложение. Заметьте, что в период

выполнения поведение элемента управления не изменилось,