КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Пример первой учебной программы ⇐ ПредыдущаяСтр 4 из 4
Рассмотреть пример использования формы для создания приложения, работающего в системе Windows. В качестве первого примера выбрана известная задача вычисления периметра треугольника. Задача 1.1 В режиме диалога необходимо задать стороны треугольника и вычислить его периметр. После ввода значений сторон треугольника выполнять следующие проверки: все стороны треугольника должны быть больше нуля и сумма любых двух сторон больше третьей. Работу программы сопровождать необходимыми комментариями.
На этапе визуального программирования мы будем использовать три стандартных элемента управления из окна Toolbox: статический текст или метка (Label), поле ввода или вывода текста – окно редактирования (TextBox) и командную кнопку (Button). – статический текст; – поле ввода или вывода текста; – командная кнопка; Метки нужны для размещения поясняющих надписей – четыре меток. Три поля ввода и одно поле вывода результата и одна кнопка управления.
Рисунок 1.3 Окна программы «Треугольник».
Весь процесс визуального программирования заключался в перетаскивании необходимые элементы управления из окна Toolbox на форму, и размещении их в определённом порядке. Если это требуется, то с помощью мыши можно отрегулировать размеры и расположение элементов управления, добавленных на форму, а также размеры самой формы. Обычно окно Toolbox находится в «свернутом» состоянии. Чтобы его «развернуть» необходимо левой клавишей мыши кликнуть на панель Toolbox, раскрыв ее, и закрепить в определённом месте экрана с помощью элемента (кликнуть на него). По окончании работы с окном Toolbox его можно «свернуть» кликнув на элемента . В процессе визуального программирования необходимо изменять некоторые свойства элементов управления, например, у меток и кнопки было изменено свойство Text в соответствии с рисунком 1.3. Для этого необходимо пользоваться окном Properties, которое изображено на рисунке 1.4.
Рисунок 1.4 – Окно Properties для элемента button1
Отличие поля результата от полей ввода в том, что в нем установлено свойство Multiline = true. Во всех элементах управления использовалось поле Text. Для получения «пустого» метода – обработчика сообщения о нажатии на кнопку «Ввод» достаточно на этапе визуального программирования дважды кликнуть на эту кнопку. В пустую заготовку обработчика сообщения private void button1_Click(object sender, EventArgs e) включим код ввода в режиме диалога значения сторон треугольника и необходимые проверки на их соответствие треугольнику. Исходный код файла Program.cs: using System; using System.Collections.Generic; using System.Linq; using System.Windows.Forms;
namespace WindowsFormsApplication1 { static class Program { /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); } } } Исходный код файла Form1.cs: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;
namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); }
private void button1_Click(object sender, EventArgs e) { int a,b,c,p; a = Convert.ToInt32(textBox1.Text); b = Convert.ToInt32(textBox2.Text); c = Convert.ToInt32(textBox3.Text); p = a + b + c; if (a > 0 && b > 0 && c > 0) if (a + b > c && a + c > b && b + c > a) textBox4.Text = "Периметр треугольника = " + p.ToString(); else { textBox4.Text = "Одна из сторон треугольника больше суммы двух других Повторите ввод "; } else { textBox4.Text = "Одна из сторон треугольника больше 0! Повторите ввод "; } } } } Среда автоматически формирует богатый список пространств имен. Рассмотрим некоторые из них. Пространство имен System содержит определение фундаментальных и базовых классов, определяющих типы данных, события, обработчики событий и другие, необходимые в каждом приложении компоненты. В пространстве имен System.Collections определены классы, реализующие функциональность таких контейнеров, как массивы, списки, словари, хэши и т.п. Классы пространства System.ComponentModel используются для реализации необходимого поведения компонентов и элементов управления приложения на этапе его разработки и выполнения. Класс System.Data необходим приложениям, работающим с базами данных посредством интерфейса ADO.NET. Этот интерфейс вы будете рассматривать при изучении баз данных. Пространство имен System.Drawing необходимо для доступа к интерфейсу графических устройств (Graphics Device Interface, GDI), а точнее, к его расширенной версии GDI+. Классы, определенные в этом пространстве имен, необходимы для рисования в окнах приложений текста, линий, двухмерных фигур, изображений и других графических объектов. Пространство System.Linq содержит классы, задающие типы, интерфейсы, стандартные операторы запроса. Пространство имен System.Windows.Forms — в нем определены классы, реализующие поведение оконных форм, составляющих базу оконных приложений Microsoft windows на платформе Microsoft .NET Frameworks.
Реально программе нужны два пространства имен – System и System.Windows.Forms, все остальные пространства имен формируются «на вырост». После отладки программы все файлы необходимо записать (в меню выбрать действие File->Save All). Визуальная среда программирования даже для небольшой программы создает более 10 файлов и вложенных папок, пояснение которых уводит читателя в такие дебри работы среды, что ни один из известных авторов книг по программированию на языке C# не отважился дать пояснений, какие файлы и зачем создаются в папках разрабатываемого проекта. Мы не будем отходить от традиций, отметив только что в папке 1_1_treygolnik, созданной на рабочем столе для первой программы, находится папка WindowsFormsAplication1, в которой еще одна папка с именем WindowsFormsAplication1 и файл проекта программы, вызываемый для редактирования WindowsFormsAplication1.csproj. В очередной папке WindowsFormsAplication1 (как в матрешке) находятся еще три папки bin, obj, Properties и несколько файлов, в том числе файлы с кодом программы – Program.cs и кодом формы – Form1.cs. Здесь же находится ресурсный файл формы Form1, в котором сохраняется внешний вид формы, и файл Form1.Designer.cs, в котором запоминаются значения «свойств» формы и всех элементов управления, размещенных на форме. Реально для работы со средой разработки Visual Studio .Netнам пока нужен файл кода формы Form1.cs. Рекомендую, на первых этапах освоения программирования, не «вламываться» в свойства и названия остальных файлов, а ограничится работой с текстом только файла Form1.cs. Некоторые условные обозначения, принятые в среде — Проект — Пространство имен — Класс — Интерфейс — Метод — Поле
• |$1 — Проект • {}• — Пространство имен • Ш — Класс • *о — Интерфейс Q: /;ёф — Метод • Иг* — Свойство • # — Поле • *Ш — Структура • Ц| — Перечислимый тип Q: ,JSJI — Элемент перечислимого типа • 9 — Событие
• |$1 — Проект
|