Создание приложения Windows Forms



 

Запускаем Visual Studio 2010, откроется Начальная страница:

 

Для начала, надо создать проект, для этого выполним последовательно: Файл -> Создать -> Проект… (также можно просто нажать сочетание клавиш Ctrl + Shift + N или пункт «Создать проект…» на Начальной странице):

 

Рис. 2. 1. Создание нового проекта

 

Выберем слева в пункте Установленные шаблоны язык Visual C #, далее найдём в списке Приложение Windows Forms. Также здесь можно выбрать какой использовать «фреймворк» (набора компонентов для написания программ). В нашем случае выберем .NET Framework 4.

 

Рис. 2. 2. Окно создания нового проекта

 

В поле Имя вводим LWP 14 SimpleRasterEditor — это название программы (выбрано по названию лабораторного практикума, номеру и названию работы). В поле Расположение указана конечная директория, где будет находиться весь проект. Выберем расположение удобное для быстрого поиска. В поле Имя решения вводится либо название программы «по умолчанию» из поля Имя автоматически, либо можно ввести своё собственное. Под этим именем будет создана конечная папка проекта (если Имя и Имя решения разные).

 

Рис. 2. 3. Вводим данные нового проекта приложения Windows Forms

 

После нажатия клавиши ОК мы увидим сформированный проект и исходный код приложения Windows Forms (не пустого изначально).

 

Рис. 2. 4. Обозреватель решений: состав проекта приложения Windows Forms сформированного средой разработки

 

Теперь, можно откомпилировать созданную программу, нажав клавишу F 5 (Отладка -> Начать отладку или нажав на иконку . Тем самым мы запускаем приложение в режиме отладки (и производим компиляцию debug-версии программы) (Debug выбрано изначально).

 

Рис. 2. 5. Запуск приложения Windows Forms по конфигурации Debug

 

Модификация приложения Windows Forms : подготовка интерфейса редактора

 

Так как наша программа будет похожа на редактор изображений, нам необходимы все атрибуты такого редактора. У нас будет верхнее меню для навигации и нижняя строка состояния для отображения подсказок.

 

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

 

ПРИМЕЧАНИЕ № 1: Для перехода на визуальное представление формы, необходимо двойным нажатием в обозревателе решений нажать на значок формы ( ) или выбрать вкладку на панели вкладок с именем <имя формы>. cs [Конструктор].

 

Задаём следующие параметры формы на панели Свойства:

 

( Name ) изменим с Form 1. cs 2 на LWP 14 Main

^ Поменяем внутреннее имя формы.

Text изменим с Form 1 на Простой растровый редактор ( C #)

^ Поменяем заголовок формы (то что отображается в шапке приложения слева).

Icon изменим изображение (иконку) приложения

^ Необходим файл значка *. ico.

Size изменим со значений 300; 300 на 800; 600

^ Поменяем размер формы.

 

ПРИМЕЧАНИЕ № 2: Для того, чтобы поменять имя файла нашей формы, необходимо выполнить следующее: выделить в обозревателе решений значок формы ( ) и нажать правую кнопку мыши, затем выбрать Переименовать. Ввести необходимое новое имя СОХРАНЯЯ расширение *. cs. После смены имени, автоматически поменяются имена проассоциированных непосредственно с формой файлов:

 

Размести на форме (перетаскиванием в любое место) три панели:

ToolStrip ( );

MenuStrip ( );

StatusStrip ( ).

 

Все эти элементы расположены на панели инструментов в разделе Меню и панели инструментов:

 

То, что должно получиться в итоге показано на рисунке ниже:

Рис. 3. 1. Модифицированная форма приложения и расстановка необходимых элементов управления

 

Теперь разместим главный элемент управления: PicureBox, растянув его до верхней и нижней панели. Проще всего это сделать не банальным расширением мышкой, а изменим свойство Dock у элемента управления:

 

Рис. 3. 2. Свойства: элемент PictureBox, свойство Dock

 

Все свойства PictureBox:

( Name ): PB_Bitmap
Dock: Fill
BackColor: White

 

Рис. 3. 2. Свойства: элемент PictureBox, свойство BackColor

 

Теперь у нас должно получиться нечто подобное:

 

Рис. 3. 3. Модифицированная форма приложения и расстановка необходимых элементов управления и PictureBox

 

На следующем рисунке показан окончательный вид на форму:

 

Рис. 3. 4. Модифицированная форма приложения и окончательная расстановка необходимых элементов управления и PictureBox

 

Теперь расставим все необходимые элементы (как рисунке выше). Начнём с главного меню (верхнего), за которое отвечает панель MenuStrip. Свойство панели не меняем, имя панели оставляем как есть: menuStrip 1. Создаём три корневых меню: Файл, Рисование и Параметры. Для создания такого меню нужно выделить MenuStrip, затем нажать на появившуюся надпись «Вводить здесь» ( ), после чего ввести текст:

 

После создания трёх корневых элементов меню, создаём вложенные меню аналогичным образом. Для создания разделителя (горизонтальной черты между элементами меню) необходимо сначала создать пустой элемент в качестве вложенного (разделителем не может быть корневой элемент меню). Текст можно вводить любой. Затем, после создания элемента, нажимаем правую кнопку мыши на том элементе меню, которое хотим сделать разделителем, далее Преобразовать в -> Separator.

 

Для перемещения разделителя, например, наверх списка элементов меню нужно выделить разделитель левой кнопкой мыши и не отпуская клавишу перетащить в нужном направлении:

 

Меню Файл выглядит так:

 

Три элемента-кнопки (MenuItem): Выбрать рисунок, Сохранить как... и Выход и два разделителя. Свойства:

 

MenuItem:

( Name ): выбратьРисунокToolStripMenuItem
Text: Выбрать рисунок
ToolTipText: Выбрать рисунков для загрузки в рабочее поле

 

Свойство ( Name ) оставлено без изменений. Имя было выбрано автоматически самой Visual Studio 2010.

 

MenuItem:

( Name ): сохранитьКакРисунокToolStripMenuItem
Text: Сохранить как...
ToolTipText: Сохранить изображение в рабочем поле как...

MenuItem:

( Name ): выходКакРисунокToolStripMenuItem
Text: Выход
ToolTipText: Выйти из приложения

 

Меню Рисование выглядит так:

 

В левом подменю четыре кнопки и один разделитель, в правом всего одна кнопка.

 

MenuItem:

( Name ): очиститьToolStripMenuItem
Text: Очистить
ToolTipText: Очистить рабочее поле

 

Как и раньше, свойство ( Name ) оставлено без изменений. Имя было выбрано автоматически.

 

MenuItem :

( Name ): линияToolStripMenuItem
Text: Линия
ToolTipText: Режим рисования линии

MenuItem :

( Name ): прямоугольникToolStripMenuItem
Text: Прямоугольник
ToolTipText: Режим рисования прямоугольника

MenuItem :

( Name ): непрерывнаяToolStripMenuItem
Text: Непрерывная
ToolTipText: Режим непрерывной линии

Меню Параметры выглядит так:

Две кнопки, разделитель и текстовое поле (TextBox):

MenuItem :

( Name ): цветПераToolStripMenuItem
Text: Цвет пера
ToolTipText: Установить цвет пера для линий и границ фигур

MenuItem :

( Name ): цветЗаливкиToolStripMenuItem
Text: Цвет заливки
ToolTipText: Установить цвет заливки фигур

MenuItem :

( Name ): толщинаПераToolStripMenuItem
Text: Толщина пера
ToolTipText: Введите значение толщины пера (по умолчанию: 1)

Перейдём к нижнему меню (ToolStrip). Здесь всё просто. Все кнопки этого меню по функциям будут повторять кнопки верхнего меню. А точнее нажатие на кнопку нижнего меню, будет приводить к нажатию кнопки верхнего меню. Мы добавим нижнее меню просто для наглядности.

 

Для добавления элемента в меню ToolStrip нужно выделить это меню и далее в специальном выдающем списке выбрать нужны элемент для добавления:

 

Меню выглядит так:

 

 

Шесть кнопок с изображениями (Button), три кнопки без изображений и четыре вертикальных разделителя (Separator).

 

При создании кнопки в ToolStrip ей автоматически присваивается изображение ( ). Изображение можно поменять, импортировав его в проект, либо создав собственное изображение при помощи встроенного в Visual Studio 2010 редактора изображений. Так как работа с созданием иконок и изображений во встроенном редакторе уже была рассмотрена в предыдущих лабораторных работах, теперь можно первым путём и импортировать изображения. Пусть это будут изображения для кнопок Сохранить как..., Выход, Очистить, Цвет пера и Цвет заливки:

 

На панели ToolStrip создаём кнопку Сохранить как... (вторая на панели) со следующими свойствами:

 

Button:

( Name ): сохранитьКакToolStripButton
Text: Сохранить как...
ToolTipText: Сохранить как...
DisplayStyle: Image

 

Теперь ищем свойство Image и жмём справа от свойства на троеточие ( ). Откроется окно Выбор ресурса:

 

Рис. 3. 5. Выбор ресурса: окно выбора файла ресурса изображения для кнопки в ToolStrip

 

На рисунке выше все ресурсы уже импортированы. Для импорта жмём на соответствующую кнопку (если нужно чтобы импортируемое изображение осталось в проекте в качестве отдельного файла, должно быть выбрано Файл ресурсов проекта). Далее выбираем нужный нам файл с изображением и жмём Открыть, изображение будет отображено в окне Выбор ресурса. Жмём ОК. Кнопка теперь с иконкой.

 

Все добавленные ресурсы можно посмотреть, открыв файл Resources . resx в обозревателе решений:

 

В нашем случае этот файл выглядит так:

 

Рис. 3. 6. Resources . resx: все ресурсы проекта импортированные извне

 

В этом же окне можно работать с этими ресурсами (добавлять новые, удалять и редактировать).

 

Рис. 3. 7. Resources . resx: меню Добавить ресурс

 

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

 

Свойства всех кнопок этого меню:

 

Button:

( Name ): выбратьРисунокToolStripButton
Text: Выбрать рисунок
ToolTipText: Выбрать рисунок
DisplayStyle: Image

Button:

( Name ): выходToolStripButton
Text: Выход
ToolTipText: Выход
DisplayStyle: Image

Button:

( Name ): очиститьToolStripButton
Text: Очистить
ToolTipText: Очистить
DisplayStyle: Image

Button:

( Name ): линияToolStripButton
Text: Л
ToolTipText: Выход
DisplayStyle: Text

Button:

( Name ): прямоугольникToolStripButton
Text: П
ToolTipText: Прямоугольник
DisplayStyle: Text

Button:

( Name ): окружностьToolStripButton
Text: О
ToolTipText: Окружность
DisplayStyle: Text

Button:

( Name ): цветПераToolStripButton
Text: Цвет пера
ToolTipText: Цвет пера
DisplayStyle: Image

Button:

( Name ): цветЗаливкиToolStripButton
Text: Цвет заливки
ToolTipText: Цвет заливки
DisplayStyle: Image

 

Строка состояния StatusStrip будет содержать всего один элемент из возможных:

 

Один StatusLabel со следующими свойствами:

 

StatusLabel:

( Name ): StatusLabel
Text: Приложение готово к работе

 


Дата добавления: 2019-09-13; просмотров: 293; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!