Автор работы: Пользователь скрыл имя, 11 Марта 2015 в 22:32, курсовая работа
Цель: изучение объектно-ориентированного языка программирования VisualC#.
Для достижения цели курсовой работы требуется решение следующих задач:
изучение литературы по объектно-ориентированному программированию;
составление и решение задач по программированию в среде VisualC#;
изучение основных визуальных компонентов среды VisualC#.
Основные методы класса:
Метод |
Описание |
Focus |
Установка фокуса ввода на элемент |
GetStyle, SetStyle |
Получение и установка флагов управления стилем элемента. Используются значения перечисления Control Styles |
Hide, Show |
Управление свойством Visible (Hide — скрыть элемент, Show — отобразить элемент) |
Invalidate |
Обновление изображения элемента путем отправки соответствующего сообщения в очередь сообщений. Метод перегружен таким образом, чтобы можно было обновлять не всю область, занимаемую элементом, а лишь ее часть |
Refresh |
Обновление элемента и всех его дочерних элементов |
SetBounds, SetLocation, SetClientArea |
Управление размером и положением элемента |
Перечисление Control Styles задает возможные значения стиля формы в виде битовых флагов, поэтому можно использовать их комбинации.
При написании приложений применяются два способа обработки событий:
Элементы управления, или компоненты, помещают на форму с помощью панели инструментов Панель элементов.
Метка Label
Метка предназначена для размещения текста на форме. Текст хранится в свойстве Text. Можно задавать шрифт (свойство Font), цвет фона (BackColor), цвет шрифта (ForeColor) и выравнивание (TextAlign) текста метки. Метка может автоматически изменять размер в зависимости от длины текста (AutoSize = True). Можно разместить на метке изображение (Image) и задать прозрачность (установить для свойства BackColor значение Color. Transparent). Метка не может получить фокус ввода, следовательно, не обрабатывает сообщения от клавиатуры.
Кнопка Button
Основное событие, обрабатываемое кнопкой, — щелчок мышью (CIick). Кроме того, кнопка может реагировать на множество других событий — нажатие клавиш на клавиатуре и мыши, изменение параметров и т. д. Нажатие клавиши Enter или пробела, если при этом кнопка имеет фокус ввода, эквивалентно щелчку мышью на кнопке. Можно изменить начертание и размер шрифта текста кнопки, который хранится в свойстве Text, задать цвет фона и фоновое изображение так же, как и для метки. Если занести имя кнопки в свойство AcceptButton формы, на которой расположена кнопка, то нажатие клавиши Enter вызывает событие Click, даже если кнопка не имеет фокуса ввода. Такая кнопка имеет дополнительную рамку и называется кнопкой по умолчанию.
Аналогично, если занести имя кнопки в свойство Cancel Button формы, на которой расположена кнопка, то нажатие клавиши Esc вызывает событие Click для этой кнопки.
Поле ввода TextBox.
Компонент TextBox позволяет пользователю вводить и редактировать текст, который запоминается в свойстве Text. Можно вводить строки практически неограниченной длины (приблизительно до 32000 символов), корректировать их, а также вводить защищенный текст (пароль) путем установки маски, отображаемой вместо вводимых символов (свойство PasswordChar). Для обеспечения возможности ввода нескольких строк устанавливают свойства Multiline, Scroll Bars и Wordwrap. Доступ только для чтения устанавливается с помощью свойства Readonly. Элемент содержит методы очистки (Clear), выделения (Select), копирования в буфер (Сору), вставки из него (Paste) и др., а также реагирует на множество событий, основными из которых являются KeyPress и KeyDown.
Меню MainMenu и ContextMenu.
Главное меню MainMenu размещается на форме таким же образом, как и другие компоненты: двойным щелчком на его значке на панели Toolbox. При этом значок располагается под заготовкой формы, а среда переходит в режим редактирования пунктов меню. Каждый пункт меню представляет собой объект типа MenuItem, и при вводе пункта меню мы задаем его свойство Text. Переход к заданию заголовка следующего пункта меню выполняется либо щелчком мыши, либо нажатием клавиши Enter и клавиш со стрелками. Обычно, чтобы сделать программу понятнее, изменяют также свойства Name каждого пункта так, чтобы они соответствовали названиям пунктов.
Пункт меню может быть запрещен или разрешен (свойство Enabled), видим или невидим (Visible), отмечен или не отмечен (Checked). Заготовка обработчика событий формируется двойным щелчком на пункте меню.
Любое приложение обычно содержит в меню команду Exit, при выборе которой приложение завершается. Для закрытия приложения можно воспользоваться либо методом Close класса главной формы приложения, либо методом Exit класса Application.
Контекстное меню — это меню, которые вызывается во время выполнения программы по нажатию правой кнопки мыши на форме или элементе управления. Обычно в этом меню размещаются пункты, дублирующие пункты главного меню, или пункты, определяющие специфические для данного компонента действия.
Контекстное меню ContextMenu создается и используется аналогично главному (значок контекстного меню появляется на панели инструментов, если воспользоваться кнопкой прокрутки). Для привязки контекстного меню к компоненту следует установить значение свойства ContextMenu этого компонента равным имени контекстного меню.
Флажок CheckBox.
Флажок используется для включения-выключения пользователем какого-либо режима. Для проверки, установлен ли флажок, анализируют его свойство Checked, принимающее значение true или false. Флажок может иметь и третье состояние — «установлен, но не полностью». Как правило, это происходит в тех случаях, когда устанавливаемый режим определяется несколькими «подрежимами», часть из которых включена, а часть выключена. В этом случае используют свойство CheckState, которое может принимать значения Checked, Unchecked и Intermediate.
Флажки используются в диалоговых окнах как поодиночке, так и в группе, причем все флажки устанавливаются независимо друг от друга.
Переключатель RadioButton.
Переключатель позволяет пользователю выбрать один из нескольких предложенных вариантов, поэтому переключатели обычно объединяют в группы. Если один из них устанавливается (свойство Checked), остальные автоматически сбрасываются. Программист может менять стиль и цвет текста, связанного с переключателем, и его выравнивание. Для переключателя можно задать цвет фона и фоновое изображение так же, как и для метки.
Переключатели можно поместить непосредственно на форму, в этом случае все они составят одну группу. Если на форме требуется отобразить несколько групп переключателей, их размещают внутри компонента Group или Panel.
Свойство Appearance управляет отображением переключателя: либо в традиционном виде (Normal), либо в виде кнопки (Button), которая «залипает» при щелчке на ней мышью.
Список ListBox.
Список служит для представления перечней элементов, в которых пользователь может выбрать одно (свойство SelectionMode равно One) или несколько значений (свойство SelectionMode равно MultiSimple или MultiExtended). Если значение свойства SelectionMode равно Multi Simple, щелчок мышью на элементе выделяет его или снимает выделение. Значение Multi Extended позволяет использовать при выделении диапазона строк клавишу Shift, а при добавлении элемента — клавишу Ctrl, аналогично проводнику Windows. Запретить выделение можно, установив значение свойства SelectionMode, равное None.
Чаще всего используются списки строк, но можно выводить и произвольные изображения. Список может состоять из нескольких столбцов (свойство Multi Column) и быть отсортированным в алфавитном порядке (Sorted = True).
Элементы списка нумеруются с нуля. Они хранятся в свойстве Items, представляющем собой коллекцию. В Items можно добавлять элементы с помощью методов Add, AddRange и Insert. Для удаления элементов служат методы Remove и RemoveAt удаляющие заданный элемент и элемент по заданному индексу соответственно.
Выделенные элементы можно получить с помощью свойств Selectedltems и Selected-Indices, предоставляющих доступ к коллекциям выделенных элементов и их индексов
Класс Form представляет собой заготовку формы, от которой наследуются классы форм приложения. Помимо множества унаследованных элементов, в этом классе определено большое количество собственных элементов, наиболее употребительные из которых приведены в следующих таблицах.
Некоторые свойства класса Form:
Свойство |
Описание |
AcceptButton |
Позволяет задать кнопку или получить информацию о кнопке, которая будет активизирована при нажатии пользователем клавиши Enter |
ActiveMDIChild, IsMDIChild, IsMDIContainer |
Свойства предназначены для использования в приложениях с многодокументным интерфейсом (MDI) |
AutoScale |
Позволяет установить или получить значение, определяющее, будет ли форма автоматически изменять свои размеры, чтобы соответствовать высоте шрифта, используемого на форме, или размерам размещенных на ней компонентов |
FormBorderStyle |
Позволяет установить или получить стиль рамки вокруг формы (используются значения перечисления Form BorderStyle) |
Cancel Button |
Позволяет задать кнопку или получить информацию о кнопке, которая будет активизирована при нажатии пользователем клавиши Esc |
Control Box |
Позволяет установить или получить значение, определяющее, будет ли присутствовать стандартная кнопка системного меню в верхнем левом углу заголовка формы |
Menu, MergedMenu |
Используются для установки или получения информации о меню на форме |
MaximizeBox, MinimizedBox |
Определяют, будут ли на форме присутствовать стандартные кнопки восстановления и свертывания в правом верхнем углу заголовка формы |
ShowInTaskbar |
Определяет, будет ли форма отображаться на панели задач Windows |
StartPosition |
Позволяет получить или установить значение, определяющее исходное положение формы в момент выполнения программы |
WindowState |
Определяет состояние отображаемой формы при запуске |
Основные методы класса Form:
Метод |
Описание |
Activate |
Активизирует форму и помещает в нее фокус ввода |
Close |
Закрывает форму |
CenterToScreen |
Помещает форму в центр экрана |
LayoutMDI |
Размещает все дочерние формы на родительской в соответствии со значениями перечисления LayoutMDI |
OnResize |
Может быть замещен для реагирования на событие Resize |
Show |
Отображает форму (унаследовано от Control) |
ShowDialog |
Отображает форму как диалоговое окно |
События класса Form:
Событие |
Описание |
Activate |
Происходит при активизации формы |
Closed, Closing |
Происходят во время закрытия формы |
MDIChiIdActive |
Возникает при активизации дочернего окна |
Диалоговые окна. В библиотеке .NET нет специального класса для представления диалоговых окон. Вместо этого устанавливаются определенные значения свойств в классе обычной формы. В диалоговом окне можно располагать те же элементы управления, что и на обычной форме. Диалоговое окно характеризуется:
Для отображения диалогового окна используется метод ShowModal, который формирует результат выполнения из значений перечисления DialogResult. Если пользователь закрыл диалоговое окно щелчком на кнопке наподобие ОК, введенную им информацию можно использовать в дальнейшей работе. Закрытие окна щелчком на кнопке вроде Cancel отменяет все введенные данные. Диалоговое окно обычно появляется при выборе пользователем некоторой команды меню на главной форме.
Класс Application, описанный в пространстве имен System.Windows.Forms, содержит статические свойства, методы и события, предназначенные для управления приложением в целом и получения его общих характеристик.
Основные элементы класса Application:
Элемент класса |
Тип |
Описание |
AddMessageFilter, RemoveMessageFiIter |
Методы |
Позволяют перехватывать сообщения и выполнять с этими сообщениями нужные предварительные действия. Для того чтобы добавить фильтр сообщений, необходимо указать класс, реализующий интерфейс IMessageFiIter |
DoEvents |
Метод |
Обеспечивает способность приложения обрабатывать сообщения из очереди сообщений во время выполнения какой-либо длительной операции |
Exit |
Метод |
Завершает работу приложения |
ExitThread |
Метод |
Прекращает обработку сообщений для текущего потока и закрывает все окна, владельцем которых является этот поток |
Run |
Метод |
Запускает стандартный цикл обработки сообщений для текущего потока |
CommonAppDataRegistry |
Свойство |
Возвращает параметр системного реестра, который хранит общую для всех пользователей информацию о приложении |
CompanyName |
Свойство |
Возвращает имя компании |
CurrentCulture |
Свойство |
Позволяет задать или получить информацию о естественном языке, для работы с которым предназначен текущий поток |
CurrentInputLanguage |
Свойство |
Позволяет задать или получить информацию о естественном языке для ввода информации, получаемой текущим потоком |
ProductName |
Свойство |
Позволяет получить имя программного продукта, которое ассоциировано с данным приложением |
ProductVersion |
Свойство |
Позволяет получить номер версии программного продукта |
StartupPath |
Свойство |
Позволяет определить имя выполняемого файла для работающего приложения и путь к нему в операционной системе |
ApplicationExit |
Событие |
Возникает при завершении приложения |
ThreadExit |
Событие |
Возникает при завершении работы потока в приложении. Если работу завершает главный поток приложения, это событие возникает до события Appl icationExit |
Информация о работе Объектно-ориентированное программирование VisualC#