Пример первой учебной программы
Рассмотреть пример использования формы для создания приложения, работающего в системе 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 — Проект
Дата добавления: 2018-11-25; просмотров: 359;