Главная страница

практика. 1 Создание Windowsприложения


Скачать 0.51 Mb.
Название1 Создание Windowsприложения
Анкорпрактика
Дата13.12.2022
Размер0.51 Mb.
Формат файлаdocx
Имя файлаWINDOWS.docx
ТипРешение
#843797

WINDOWS-ПРИЛОЖЕНИЯ

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


Для создания Windows-приложения следует в меню «Файл» выбрать пункт «Создать проект» (или «Добавить» для добавления проекта в уже существующее решение), после чего откроется окно, показанное на рис.1.



Рис. 1. Создание Windows-приложения

Для создания Windows-приложения следует выбрать вид приложения «Приложениe Windows Forms» и задать имя проекта в соответствии с рекомендациями. После нажатия на кнопку «OK» откроется окно с главной формой программы, которая по умолчанию называется Form1 (рис. 2).



Рис.2. Вид экрана после создания приложения Windows Forms

Перед работой необходимо настроить среду программирования, чтобы были открыты обозреватель решений, список ошибок, окно свойств и панель элементов, как показано на рис. 3. Для этого необходимо выбрать соответствующие пункты в меню «Вид». Окно свойств и панель элементов будут необходимы при разработке проектов приложений Windows Forms.



Рис. 3. Настройка среды для создания приложения Windows Forms

Создание Windows-приложения включает в себя два этапа: визуальное проектирование и проектирование поведения приложения.

Визуальное проектирование представляет собой добавление компонентов на форму (например, кнопок, полей ввода, меню и др.) и настройку свойств этих компонентов. Свойства компонентов отображаются в окне свойств (рис. 4).



Рис.4. Свойства формы

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


Таблица 1. Свойства формы


Свойство

Описание

Name

Устанавливает имя формы – точнее имя класса, который наследуется от класса Form.

BackColor

Указывает на фоновый цвет формы. Щелкнув на это свойство, мы сможем выбрать тот цвет, который нам подходит из списка предложенных цветов или цветовой палитры.

BackgroundImage

Указывает на фоновое изображение формы.

BackgroundImageLayout

Определяет, как изображение, заданное в свойстве BackgroundImage, будет располагаться на форме.

Enabled

Если данное свойство имеет значение false, то она не сможет получать ввод от пользователя, то есть мы не сможем нажать на кнопки, ввести текст в текстовые поля и т.д.

Font

Задает шрифт для всей формы и всех помещенных на нее элементов управления. Однако, задав у элементов формы свой шрифт, мы можем тем самым переопределить его.

Icon

Задает иконку формы.

Location

Определяет положение по отношению к верхнему левому углу экрана, если для свойства StartPosition установлено значение Manual.

MaximizeBox

Указывает, будет ли доступна кнопка максимизации окна в заголовке формы

MinimizeBox

Указывает, будет ли доступна кнопка минимизации окна.

MaximumSize

Задает максимальный размер формы.

MinimumSize

Задает минимальный размер формы.

Size

Определяет начальный размер формы.

StartPosition

Указывает на начальную позицию, с которой форма появляется на экране.

Text

определяет заголовок формы.

TopMost

Если данное свойство имеет значение true, то форма всегда будет находиться поверх других окон.

Visible

Видима ли форма, если мы хотим скрыть форму от пользователя, то можем задать данному свойству значение false.



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

Для взаимодействия с пользователем в Windows Forms используется механизм событий. События в Windows Forms представляют стандартные события на C#, только применяемые к визуальным компонентам и подчиняются тем же правилам, что события в C#. Но создание обработчиков событий в Windows Forms все же имеет некоторые особенности.

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



Рис. 5. События формы

Чтобы добавить обработчик, можно просто два раза нажать по пустому полю рядом с названием события, и после этого Visual Studio автоматически сгенерирует обработчик события. Например, нажмем для создания обработчика для события Load (рис. 6):



Рис.6. Добавление обработчика события

При этом в код формы автоматически будет добавлен код обработчика события (рис. 7).



Рис. 7. Код обработчика событий Load


2 Создание простейшего Windows-приложения
2.1 Стандартные элементы управления

Элемент управления Button

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

Текст, отображаемый на кнопке, содержится в свойстве Text.

Внешний вид текста определяется свойствами Font и TextAlign.

Кнопка Button также может отображать изображения, используя свойства Image и ImageList. В табл. 2 приведены основные свойства и события элемента управления Button.


Таблица 2. Свойства и события элемента управления Button


Член класса

Наименование

Описание

Свойства

Name

Возвращает или задает имя элемента управления.

Enabled

Указывает, включен ли элемент управления.

Font

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

Text

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

TextAlign

Возвращает или задает способ выравнивания текста на кнопке.

Свойства

Visible

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




Image

Возвращает или задает изображение, отображаемое на кнопке.

ImageList

Получает или задает свойство ImageList, содержащее изображение Image, отображенное в кнопке.

События

Click

Происходит при щелчке элемента управления.

DoubleClick

Происходит при двойном щелчке элемента управления Button.



Добавим на форму 2 кнопки и зададим им в окне свойств следующие свойства (рис. 7):

Name = buttonOk, Text = Ok,

Name = buttonCancel, Text = Отмена.

При добавлении элементов управления на форму следует задавать им соответствующее свойство Name.



Рис.8. Элемент управления Button

Элемент управления CheckBox

Элемент CheckBox или флажок предназначен для установки одного из двух значений: отмечен или не отмечен. Чтобы отметить флажок, надо установить у его свойства Checked значение true. Кроме свойства Checked у элемента CheckBox имеется свойство CheckState, которое позволяет задать для флажка одно из трех состояний – Checked (отмечен), Indeterminate (флажок не определен - отмечен, но находится в неактивном состоянии) и Unchecked (не отмечен)

Также следует отметить свойство AutoCheck – если оно имеет значение false, то мы не можем изменять состояние флажка. По умолчанию оно имеет значение true.

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

В табл. 3 приведены основные свойства и события элемента управления Button.


Таблица 3. Свойства и события элемента управления CheckBox




Наименование

Описание

Свойство

AutoCheck

Получает или задает значение, указывающее, изменяются ли значения

Checked или CheckState, а также внешний вид CheckBox автоматически при щелчке элемента управления CheckBox.

Checked

Получает или задает значение, определяющее, находится ли CheckBox в выбранном состоянии.

CheckState

Получает или задает состояние

CheckBox.

Name

Возвращает или задает имя элемента управления.



Text

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

Visible

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

События

CheckedChanged

Происходит при изменении значения свойства Checked.



Добавим на форму 2 элемента CheckBox для выбора операции вычисления (рис. 9): сумма и/или произведение. Согласно рекомендациям, свойство Name одного элемента равно checkBoxSum, а другого checkBoxMult.



Рис. 9. Элемент управления CheckBox

Элемент управления Label

Элемент управления Label используются для отображения текста или изображений, которые не могут быть изменены пользователем. Они используются для идентификации других объектов в форме. На рис. 10 добавлены три элемента Label:

Name = labelA, Text = Число 1,

Name = labelB, Text = Число 2,

Name = labeResult, Text = Результат,



Рис. 10. Элемент управления Label

Элемент управления TextBox

Текстовые поля TextBox используются для получения входных данных от пользователя или для отображения текста. Элемент TextBox обычно используется для редактируемого текста, хотя его можно также сделать доступным только для чтения. Для отображения многострочного форматируемого текста используется элемент RichTextBox.

На рис. 11 добавлены поля для ввода данных: textBoxA, textBoxB и textBoxResult.



Рис. 11. Элемент управления TextBox
2.2 Разработка логической составляющей приложения

При разработке приложений следует разделять бизнес-логику приложения от способа ее представления, поэтому добавим в проект класс Calculate для вычислений. Данный класс будет содержать методы для вычисления суммы и произведения (пример 1).

Пример 1. Класс Calculate.

class Calculate

{

public static double Sum(double a, double b)

{ return a + b;

} public static double Mul(double a, double b)

{ return a * b;

}

}

Добавим обработчик события Click для кнопки Ok, который представлен в примере 2.

Пример 2. Обработчик события Click для кнопки Ok.

private void buttonOk_Click(object sender, Even-

tArgs e) { double a = 0; double b = 0; if (!double.TryParse(textBoxA.Text, out a) ||

!double.TryParse(textBoxB.Text, out b)) MessageBox.Show("Ошибка ввода!"); else { double sum = Calculate.Sum(a, b); double mul = Calculate.Mul(a, b);

if (checkBoxSum.Checked && check-

BoxMult.Checked) textBoxResult.Text = sum.ToString() +

"; " + mul.ToString(); else

if (checkBoxSum.Checked) textBoxResult.Text =

sum.ToString(); else if (checkBoxMult.Checked) textBoxResult.Text =

mul.ToString(); else textBoxResult.Text = "";

}

}

3 Лабораторная работа 5

Разработка Windows – приложения


В ранее созданное решение добавить новый проект для лабораторной работы 8.

Создать проект приложения Windows Forms, разработать формы для проекта из лабораторной работы 7. Реализовать работу приложения, добавив и модифицировав классы из предыдущих работ.

Должны быть реализованы следующие формы:

  • игра по отгадыванию ответа значения функции;

  • работа с одномерными массивами;

  • работа со строками;

  • игра;

  • вывод информации об авторе.

На каждой форме должно быть выведено задание.

Для вывода одномерных массивов следует использовать компонент DataGridView.

Компоненты для вводимых и выводимых данных должны быть подписаны.

При выходе из программы должно запрашиваться подтверждение.
8.4 Вопросы для самоконтроля

  1. Как создать приложение Windows Forms?

  2. Для чего нужны свойства формы?

  3. Каким образом изменить значение свойства?

  4. Каким образом получить значение свойства?

  5. Что определяют события формы?

  6. Какие компоненты формы вы знаете?

  7. Какое свойство указывает, включен ли элемент управления?

  8. Какое свойство возвращает или задает текст, связанный с этим элементом управления?

  9. Какое событие происходит при щелчке элемента управления Button?

  10. Какое событие происходит при двойном щелчке элемента управления Button?

  11. На форме содержится элемент CheckBox с именем checkBoxVisible. Как программно установить, что его флаг отмечен?

  12. Какие компоненты используются для ввода и вывода текста?

  13. Какие компоненты используются для отображения меню?

  14. Какие виды меню имеются в стандартном наборе компонентов?

  15. Какой компонент используется для отображения таблиц?

  16. Какой компонент предназначен для рисования?





написать администратору сайта