Автор работы: Пользователь скрыл имя, 11 Марта 2015 в 22:32, курсовая работа
Цель: изучение объектно-ориентированного языка программирования VisualC#.
Для достижения цели курсовой работы требуется решение следующих задач:
изучение литературы по объектно-ориентированному программированию;
составление и решение задач по программированию в среде VisualC#;
изучение основных визуальных компонентов среды VisualC#.
Название языка вообще-то следовало бы произносить как «Си-диез». Компания Microsoft неоднократно подчеркивала, что, несмотря на некоторое различие в начертании и коде символов «решетки» и «диеза», в названии языка имеется в виду именно музыкальный диез и обыгрывается тот факт, что символом С в музыке обозначается нота «до». Таким образом, создатели языка вложили в его название смысл «на полтона выше С». Однако в нашей стране укоренилась калька с английского — «Си-шарп».
Среда разработки Visual Studio.NET предоставляет мощные и удобные средства написания, корректировки, компиляции, отладки и запуска приложений, использующих .NET-совместимые языки. Корпорация Microsoft включила в платформу средства разработки для четырех языков: С#, VB.NET, С++ и J#.
Платформа .NET является открытой средой. Это значит, что компиляторы для нее могут поставляться и сторонними разработчиками. К настоящему времени разработаны десятки компиляторов для .NET, например, Ada, COBOL, Delphi, Eiffel, Fortran, Lisp, Oberon, Perl и Python.
Bсе .NET-совместимые языки должны отвечать требованиям общеязыковой спецификации (Common Language Specification, CLS), в которой описывается набор общих для всех языков характеристик. Это позволяет использовать для разработки приложения несколько языков программирования и вести полноценную межъязыковую отладку. Все программы независимо от языка используют одни и те же базовые классы библиотеки .NET.
Приложение в процессе разработки называется проектом. Проект объединяет все необходимое для создания приложения: файлы, папки, ссылки и прочие ресурсы. Среда Visual Studio.NET позволяет создавать проекты различных типов, например:
В данной курсовой работе будут рассматриваться только консольные приложения и приложения Windows Forms.
Создание проекта. Основные окна среды.
Для создания проекта следует после запуска Microsoft Visual C# 2012 Express в главном меню выбрать команду Файл - Создать проект. В появившемся диалоговом окне выбрать один из Установленных шаблонов Visual Studio. Например, консольное приложение. Примерный вид экрана приведен на рисунке 1.
В верхней части экрана располагается главное меню (с разделами Файл, Вид, Построение и т. д.) и панели инструментов. Панелей инструментов в среде великое множество, и если включить их все (Вид – Панели инструментов - … ) они займут половину экрана.
В нижней правой части экрана расположено окно свойств «Свойства». В окне свойств отображаются важнейшие характеристики выделенного элемента. Например, чтобы изменить имя файла, в котором хранится класс Classl, надо выделить этот файл в окне Обозреватель решений и задать в окне свойств новое значение свойства Имя файла (ввод заканчивается нажатием клавиши Enter).
Рисунок 1.
Основное пространство экрана занимает окно редактора, в котором располагается текст программы, созданный средой автоматически. Текст представляет собой каркас, в который программист добавляет код по мере необходимости.
Ключевые (зарезервированные) слова отображаются синим цветом, комментарии различных типов — серым и темно-зеленым, остальной текст — черным. Слева от текста находятся символы структуры: щелкнув на любом квадратике с минусом, можно скрыть соответствующий блок кода. При этом минус превращается в плюс, щелкнув на котором, можно опять вывести блок на экран. Это средство хорошо визуально структурирует код и позволяет сфокусировать внимание на нужных фрагментах.
Заготовка консольной программы
Рассмотрим каждую строку заготовки программы. Изучим принципы работы в оболочке:
using System;
namespace ConsoleApplicationl 1
{
/// <summary>
/// Summary description for Classl.
/// </summary>
class Classl
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main(string[ ] args)
{
//
// TODO: Add code to start application here
//
}
}
}
Директива using System разрешает использовать имена стандартных классов из пространства имен System непосредственно (без указания имени пространства).
Ключевое слово namespace создает для проекта собственное пространство имен, названное по умолчанию ConsoleAppl icationl. Это сделано для того, чтобы можно было давать программным объектам имена, не заботясь о том, что они могут совпасть с именами в других пространствах имен.
Строки, начинающиеся с двух или трех косых черт, являются комментариями и предназначены для документирования текста программы.
С# — объектно-ориентированный язык, поэтому написанная на нем программа представляет собой совокупность взаимодействующих между собой классов. В нашей заготовке программы всего один класс, которому по умолчанию задано имя Classl. Описание класса начинается с ключевого слова class, за которым следуют его имя и далее в фигурных скобках — список элементов класса (его данных и функций, называемых также методами).
Фигурные скобки являются важным элементом синтаксиса. Каждой открывающей скобке соответствует своя закрывающая, которая обычно располагается ниже по тексту с тем же отступом. Эти скобки ограничивают блок, внутри которого могут располагаться другие блоки, вложенные в него, как матрешки. Блок может применяться в любом месте, где допускается отдельный оператор.
В данном случае внутри класса только один элемент — метод Main. Каждое приложение должно содержать метод Main — с него начинается выполнение программы. Все методы описываются по единым правилам.
Упрощенный синтаксис метода:
[ спецификаторы] тип имя метода ( [ параметры ] )
{
тело метода: действия, выполняемые методом
}
Таким образом, любой метод должен иметь тип, имя и тело, остальные части описания являются необязательными.
Запуск программы
Самый простой способ запустить программу — нажать клавишу F5 (или выбрать в меню команду Отладка – Начать отладку). Для того чтобы пронаблюдать ее спокойно, следует воспользоваться клавишами Ctrl+F5 (или выбрать в меню команду Отладка – Запуск без отладки).
После внесения изменений компилятор может обнаружить в тексте программы синтаксические ошибки. Он сообщает об этом в окне, расположенном в нижней части экрана.
Создадим новый проект (Файл – Создать проект), выбрав шаблон Приложение Windows Form (рисунок 2). После более длительных раздумий, чем для консольного приложения, среда сформирует шаблон Windows-приложения. Первое отличие, которое бросается в глаза, — вкладка заготовки формы Form1.cs[Конструктор], расположенная в основной части экрана. Форма представляет собой окно и предназначена для размещения компонентов (элементов управления) — меню, текста, кнопок, списков, изображений и т.д.
Рисунок 2.
Среда создает не только заготовку формы, но и шаблон текста приложения. Перейти к нему можно, щелкнув, кнопкой мыши на файле Forml.cs и выбрав в контекстном меню команду Перейти к коду (рисунок 3).
Рисунок 3.
При этом откроется вкладка с кодом формы:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
Приложение начинается с директив использования пространств имен библиотеки .NET. Для пустой формы, не содержащей ни одного компонента, необходимыми являются только две директивы:
using System;
using System.Windows.Forms;
Остальные директивы добавлены средой «на вырост». Пространство System.Windows.Forms содержит огромное Количество типов, являющихся строительными блоками Windows-приложений.
Продолжим рассмотрение кода программы. В нем описан класс Forml, производный от класса Form. Он наследует от своего предка множество элементов, которые мы рассмотрим в следующих разделах. В самом классе Forml описано новое закрытое поле components — контейнер для хранения компонентов, которые можно добавить в класс формы.
Процесс создания Windows-приложения состоит из двух основных этапов:
1. Визуальное проектирование, то есть задание внешнего облика приложения.
2. Определение поведения приложения путем написания процедур обработки событий.
Визуальное проектирование заключается в помещении на форму компонентов (элементов управления) и задании их свойств и свойств самой формы с помощью окна свойств и панели элементов (рисунок 4 и рисунок 5). Если его не видно, можно воспользоваться командой меню Вид - Окно свойств. Свойства отображаются либо в алфавитном порядке, либо с группируемыми по категориям. Способ отображения выбирается с помощью кнопок, расположенных в верхней части окна свойств.
Рисунок 4. Рисунок 5.
Самый простой способ размещения компонента — двойной щелчок на соответствующем значке палитры компонентов Панель элементов, при этом компонент помещается на форму. Затем компонент можно переместить и изменить его размеры с помощью мыши. Можно также сделать один щелчок на палитре и еще один щелчок в том месте формы, где планируете поместить компонент. В окне свойств отображаются свойства выбранного в данный момент компонента.
Определение поведения программы начинается с принятия решений, какие действия должны выполняться при щелчке на кнопках, вводе текста, выборе пунктов меню и т. д., иными словами, по каким событиям будут выполняться действия, реализующие функциональность программы.
Заготовка шаблона обработчика события формируется двойным щелчком на поле, расположенном справа от имени соответствующего события на вкладке «События» окна свойств, при этом появляется вкладка окна редактора кода с заготовкой соответствующего обработчика. Для каждого класса определен свой набор событий, на которые он может реагировать.
Для размещения компонента на форме необходимо выполнить три действия:
1. Создать экземпляр соответствующего класса.
2. Настроить свойства экземпляра, в том числе зарегистрировать обработчик событий.
3. Поместить экземпляр в коллекцию компонентов формы.
Прежде чем приступить к изучению форм и элементов управления, размещаемых на формах, необходимо рассмотреть их общего предка — класс Control.
Класс Control является базовым для всех отображаемых элементов, то есть элементов, которые составляют графический интерфейс пользователя, например кнопок, списков, полей ввода и форм. Класс Control реализует базовую функциональность интерфейсных элементов. Он содержит методы обработки ввода пользователя с помощью мыши и клавиатуры, определяет размер, положение, цвет фона и другие характеристики элемента. Для каждого объекта можно определить родительский класс, задав свойство Parent, при этом объект будет иметь, например, такой же цвет фона, как и его родитель.
Наиболее важные свойства класса Control перечислены в таблице:
Свойство |
Описание |
Anchor |
Определяет, какие края элемента управления будут привязаны к краям родительского контейнера. Если задать привязку всех краев, элемент будет изменять размеры вместе с родительским |
BackColor, Backgroundlmage, Font,ForeColor, Cursor |
Определяют параметры отображения рабочей области формы: цвет фона, фоновый рисунок, шрифт, цвет текста, вид указателя мыши |
Bottom, Right |
Координаты нижнего правого угла элемента. Могут устанавливаться также через свойство Size |
Top, Left |
Координаты верхнего левого угла элемента. Эквивалентны свойству Location |
Bounds |
Возвращает объект типа Rectangle (прямоугольник), который определяет размеры элемента управления |
ClientRectangle |
Возвращает объект Rectangle, определяющий размеры рабочей области элемента |
ContextMenu |
Определяет, какое контекстное меню будет выводиться при щелчке на элементе правой кнопкой мыши |
Dock |
Определяет, у какого края родительского контейнера будет отображаться элемент управления |
Location |
Координаты верхнего левого угла элемента относительно верхнего левого угла контейнера, содержащего этот элемент, в виде структуры типа Point. Структура содержит свойства X и Y |
Height, Width |
Высота и ширина элемента |
Size |
Высота и ширина элемента в виде структуры типа Size. Структура содержит свойства Height и Width |
Handle |
Возвращает дескриптор элемента (уникальное целочисленное значение, сопоставленное элементу) |
MouseButtons |
Статическое свойство, проверяющее состояние клавиш мыши. Возвращает результат в виде объекта типа MouseButtons |
Parent |
Возвращает объект, родительский по отношению к данному (имеется в виду не базовый класс, а объект-владелец) |
Region |
Определяет объект Region, при помощи которого можно управлять очертаниями и границами элемента управления |
Tablndex, TabStop |
Используются для настройки последовательности перемещения с помощью клавиши Tab по элементам управления, расположенным на форме |
Информация о работе Объектно-ориентированное программирование VisualC#