Что позволяет осуществлять графический интерфейс. Разработка программ с графическим интерфейсом

Определение 1

Графический интерфейс пользователя (Graphical User Interface, GUI) – разновидность пользовательского интерфейса, в котором элементы интерфейса представлены пользователю на дисплее в виде графических изображений.

Графический интерфейс дает пользователю возможность с помощью манипуляторов (клавиатура, мышь, джойстик и т.п.) управлять всеми элементами интерфейса. Элементы графического интерфейса оформлены таким образом, чтобы отображать их назначение и свойства для облегчения понимания и освоения программ пользователями любого уровня.

Классификация

Выделяют следующие виды графического интерфейса:

  • простой: имеет типовые экранные формы и стандартные элементы интерфейса, которые обеспечивает сама подсистема графического интерфейса;
  • истинно-графический , двумерный : имеет нестандартные элементы интерфейса и оригинальные метафоры, которые реализуются собственными средствами приложения или сторонней библиотекой;
  • трёхмерный.

Замечание 1

Одним из требований к хорошему графическому интерфейсу программной системы является концепция DWIM (Do What I Mean – делай то, что я имею в виду). Данная концепция требует, чтобы система работала предсказуемо для интуитивного понимания пользователем действий , которые выполнит программа после получения его команды.

Достоинства

Графический интерфейс является интуитивно понятным, «дружелюбным» для пользователей любого уровня; для работы с программами обработки графики графический интерфейс является единственно возможным.

Недостатки

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

Основные элементы графического интерфейса

Элемент интерфейса, элемент управления, виджет – примитив графического интерфейса пользователя, который имеет стандартный внешний вид и выполняет стандартные действия.

Рисунок 1.

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

Рисунок 2. Вид окна папки и его элементы

Диалоговое окно – в графическом интерфейсе является специальным элементом интерфейса, предназначенным для вывода информации и (или) получения ответа от пользователя. Осуществляет двусторонний «диалог» между пользователем и ПК.

Рисунок 3. Пример диалогового окна

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

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

В диалоговых окнах, которые посвящены настройкам параметров, встречаются особые значки – выключатели и переключатели:

Выключатель – значок (флажок) в виде «галочки» в квадратном окошечке, который показывает, что установленный элемент включен.

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

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

Окно приложения. Приложениями принято называть прикладные программы. Каждое приложение имеет главное окно. В ходе работы с приложением могут открываться дополнительные подчиненные окна.

Рисунок 4. Окно приложения – графического редактора Paint

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

Рисунок 5. Окно документа, управляемое приложением MS Word

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

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

Контекстное меню – элемент графического интерфейса операционной системы в виде списка команд, который вызывается пользователем для выбора необходимого действия над выбранным объектом. Команды контекстного меню относятся лишь к тому объекту, для которого это меню вызвано.

Элементами графического интерфейса операционной системы Windows также являются:

  • Значки, которыми обозначаются программы и документы. Для запуска выполняется двойной щелчок кнопки мыши по значку.
  • Ярлыки, которые используются для быстрого доступа к программе, которая может храниться не на Рабочем столе и даже на другом диске.
  • Панель задач располагается в нижней части экрана. На ней располагаются кнопка Пуск, кнопки открытых окон, индикаторы и время.

Взаимодействие человека и современного ПК осуществляется с помощью объектно-ориентированного графического интерфейса, в котором:

  • все объекты представлены в виде значков;
  • операции над объектами осуществляются в окнах;
  • основным элементом программного управления является меню;
  • основным элементом аппаратного управления являются различные манипуляторы.

ОПЕРАЦИОННЫЕ СИСТЕМЫ

Учебное пособие

(материалы для выполнения лабораторных, практических, самостоятельных работ)

«Операционная система MS Windows»


Тема 1. Интерфейс
· Роль и назначение операционной оболочки Windows. · Основные элементы интерфейса (диалога) Windows, их назначение. · Основные элементы окна. · Основные элементы Главного меню. · Буфер обмена. · Поиск файлов. · Приемы работы с манипулятором мышь.
Тема 2. Справочная система
· Способы получения справки.
Тема 3. Управление файловой системой
· Назначение папки Мой компьютер, программы Проводник. · Создание, сохранение, переименование, копирование, перемещение, удаление файлов, папок и ярлыков. · Восстановление удаленных объектов из папки Корзина.
Тема 4. Стандартные программы · Назначение и основные возможности стандартных программ.
· Простейшие приемы редактирования текста в редакторе Блокнот. · Выполнять простейшие рисунки в графическом редакторе Paint. · Обзор программ папки Служебные. Тема 5. Настройки Windows · Настройки операционной системы Windows. · Настройки элементов оформления.

Тема 1. ИНТЕРФЕЙС WINDOWS

Операционная система Windows

Это операционная система с графическим интерфейсом и расширенными сетевыми возможностями, была разработана фирмой Microsoft в 1995 году. Windows 95(98) - это интегрированная среда, которая обеспечивает эффективный обмен текстовой, графической, звуковой и видеоинформации между отдельными программами. Базовые функциональные возможности данной ОС перекрывают все, что заложено в ОС MS DOS, WINDOWS 3.1 . Основная функция Windows – управление работой специально созданных для этой среды программ. Windows – это новый уровень компьютерной технологи, основанный на так называемом объекто-ориентированном подходе к работе с данными. События: сигналы от аппаратуры, щелчок мышью, нажатие клавиш и т.п. Каждое событие порождает сообщение, которое воспринимается оконным объектом, т.е. в результате сообщения следует действие. С помощью сообщений происходит управление оконными объектами.

Особенности ОС:

· Поддерживает технологию Plug and Play (включи и работай). Это самонастраивающаяся технология - достаточно присоединить новое устройство к компьютеру и включить его. При включении компьютера устройство будет автоматически установлено и опознано.

· Повышенная производительность, обусловленная многозадачностью т.е. компьютер может работать одновременно с несколькими программами.

· Совместимость с программами ОС MS DOS.

· Устойчивость к сбоям.

· Допустимость длинных имен файлов (до 256 символов).

· Высокое качество мультимедиа (звук, видео, графика).

Основные понятия ОС Windows

& Стартовый экран Windows представляет собой системный объект, называемый Рабочим столом.

Рабочий стол- это графическая среда, на которой отображаются объекты Windows и элементы управления Windows.

Все, с чем мы имеем дело, работая с компьютером в данной системе, можно отнести либо к объектам, либо к элементам управления. В исходном состоянии на Рабочем столе можно наблюдать несколько экранных значков и Панель задач.

Значки - это графическое представление объектов, а Панель задач - один из основных элементов управления.

Значкам соответствуют папки, приложения (программы), документы, сетевые устройства.

Окно – структурный и управляющий элемент пользовательского интерфейса, представляющий собой обрамленную часть экрана, в которой может отображаться объект (приложение, документ или сообщение).

Результаты работы большинства приложений (программ) сохраняются в их рабочих файлах, называемых также документами.

Документ – любой файл, обрабатываемый с помощью приложений (программ).

В Windows документ может содержать текстовую, графическую, звуковую и видеоинформацию.

Буфер обмена - специальная область памяти, которая используется для пересылки данных между приложениями и документами.

Структура интерфейса Windows

Основные элементы интерфейса (диалога): Рабочий стол, Панель задач, Главное меню, папка Мой компьютер, программа Проводник, Панель управления, Корзина.

Дадим краткую характеристику данным элементам.

Рабочий стол - поверхность экрана монитора с расположенными на нем графическими объектами - значками и ярлыками. Поверхность экрана монитора содержит фоновый рисунок (картинку).

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

На панели задач расположены кнопка «Пуск», кнопки открытых окон, индикатор клавиатуры, системные часы. Кнопки открытых окон на панели задач можно использовать для переключения между окнами т.е. щелкнув мышью на данной кнопке, окно соответствующее данной кнопке становится активным. При нажатии кнопки Пуск раскрывается Главное меню рис.1

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

Значок напротив пункта меню означает наличие вложенного меню.

Команда Программы - позволяет выбрать необходимую программу из списка. При установке Windows, устанавливается набор стандартных программ в число которых входит: текстовый редактор Блокнот, WordPad, графический редактор Paint Калькулятор и др. (Данные программы запускают Пуск - Программы - Стандартные - Блокнот).

Команда Документы - выводит на экран меню со списком документов (15 последних), с которыми работал пользователь.

Команда Настройка - позволяет производить необходимые настройки системы.

Команда Поиск - позволяет осуществить поиск файлов и папок.

Команда Справка - вызов справочной системы.

Команда Выполнить… - предназначен для непосредственного запуска программ из командной строки указав полный путь к файлу.

Команда Завершение работы - позволяет выбрать способ завершения работы Windows в зависимости от дальнейших действий.

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

Программа Проводник более мощное средство для работы с файловой системой. Проводник отображает содержимое компьютера в виде «дерева» папок.

Корзина предназначена для временного хранения удаленных объектов. Она позволяет восстанавливать объекты удаленные по ошибке. Корзина занимает часть дискового пространства. Если Вы удалили файл, то он помещается из папки, где был прописан, в Корзину. Файл с диска удаляется только при очистке Корзины.

Панель Управления служит для изменения режима работы ОС, для установки программного и аппаратного обеспечения, для настройки параметров клавиатуры, мыши, экрана и т.д. Открыть панель Управления можно через Главное меню команда Настройка- Панель управления.

Приемы работы с мышью

Инструментом управления в ОС WINDOWS становится указатель мыши передвигаемый по экрану с помощью манипулятора мышь.

Основными приемами управления являются:

Щелчок (быстрое нажатие и отпускание левой кнопки мыши). Используется при выделении объекта, выборе пункта меню, нажатии кнопки;

Двойной щелчок - два щелчка выполненные с малым интервалом времени между ними. Используется для запуска программ, открытия файлов и папок.

Прием Drag-and-Drop (схватить и переместить) - подвести указатель мыши к объекту (заголовку объекта), нажать левую кнопку мыши, и, не отпуская ее переместить объект в нужное место.

Вызов контекстного меню – указать курсором на объект и нажать правую кнопку мыши.

Работа с окнами

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

Рассмотрим структуру окна папки Windows:

рис.2

1 - строка заголовка, она содержит название папки и кнопки управления представлением окна:
- свернуть окно в пиктограмму на Панели задач

Окно во весь экран

Восстановить размеры окна

Закрыть окно

2 - строка меню, содержащая перечень команд. При щелчке на каждом из пунктов этого меню открывается «ниспадающее» меню, пункты которого позволяют проводить операции с содержимым окна или с окном в целом.

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

4 - адресная строка, в ней указан путь доступа к текущей папке.

5 - рабочая область, в ней отображаются значки объектов, хранящихся в папке, причем способом отображения значков можно управлять. В окнах приложений в рабочей области размещаются окна документов и рабочие панели.

6 - полосы прокрутки, появляются, если количество объектов велико и с помощью данных полос содержимое можно «прокручивать» в рабочей области окна. Полоса прокрутки имеет движок и две концевые кнопки. Прокрутку выполняют тремя способами:
- щелчком на одной из концевых кнопок;
- перетаскиванием движка;
- щелчком на полосе прокрутки выше и ниже движка.

7 - строка состояния, в ней выводится дополнительная информация о текущем состоянии (число выделенных объектов, размер и т.д.).

Окна можно перемещать, захватив его за заголовок (приемом Drag-and-Drop). Можно также изменять горизонтальные и вертикальные размеры окна, для этого необходимо подвести указатель мыши к границе окна и после того как указатель мыши примет вид (двунаправленной стрелки), приемом Drag-and-Drop перетащите границу на новое место. Настройки окна производятся, используя меню Вид . Так, чтобы изменить способ отображения значков Вид - Крупные значки (Мелкие значки, Список, Таблица). Чтобы отсортировать значки выберите Вид - Упорядочить значки - по имени (по типу, по размеру, по дате).

Диалоговые окна

Если после команды подменю стоит многоточие (…), то после выбора данной команды появиться диалоговое окно . Диалоговые окна позволяют вести диалог с ОС, например в какой папке сохранить файл и дать имя файлу, найти нужный файл по имени просмотрев все папки диска С: и т.д.

Работая со стандартными программами, нужно сохранить информацию на дискете или на жестком диске для этого в меню редактора выбираете команду Файл - Сохранить как… , при этом появляется диалоговое окно (см. рис.3).

Вам необходимо указать в какой папке сохранить файл, имя папки надо выбрать из списка т.е. нажать кнопку в поле Сохранить в: и в появившемся списке раскрыть нужную папку двойным щелчком. В поле Имя файла: щелкнуть мышью и ввести нужное имя файла. Затем нажать кнопку Сохранить, если все действия выполнены верно или нажать Отмена в противном случае.

Выделим элементы диалогового окна:

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

Поле ввода со спускающимся списком представляет из себя поле, в котором первоначально видна только одна строчка. Справа от него находится стрелка, направленная вниз. Если щелкнуть на стрелке, то развернется «спускающийся» список, и вы увидите элементы, из которых можно сделать выбор.

Кнопки опций (зависимые переключатели) представляют группу взаимосвязанных элементов, из которых можно выбрать («включить») только один. Просто щелкните на кнопке той опции, которую вы хотите выделить. При этом все другие кнопки «отключаются».

Поля меток (независимые переключатели) могут представлять собой как отдельную опцию, так и группу взаимосвязанных опций. Метка (обычно «крестик» или «галочка») появляется после щелчка в поле рядом с опцией, чтобы показать, что она активна.

Командные кнопки выполняют команды, название которых написано на данной кнопке (например, Сохранить, Открыть, Выход, Отмена, и т.д.). Если на кнопке после названия стоит многоточие, (например, как на кнопке Параметры...), то при ее выборе появится другое диалоговое окно.

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

Если вы работаете с документом, уже имеющим имя файла, то чтобы сохранить изменения в нем, достаточно выбрать команду Файл - Сохранить, при этом диалоговое окно не появляется.

Чтобы открыть уже существующий документ из окна редактора необходимо выбрать команду меню Файл - Открыть, используя поле ввода со спускающимся списком выбрать нужную папку, раскрыв ее двойным щелчком. Если необходимо перейти к вышестоящей папке или диску воспользуйтесь кнопкой .

Иногда Вы не можете найти нужный файл, папку. В организации поиска вам поможет команда Главного меню Поиск - Искать файлы и папки.

рис. 4

Рассмотрим работу по поиску файла, используя вкладку Имя и размещение. В поле со списком введите Имя файла (можно первые буквы), в текстовое поле Содержащий можно ввести (не обязательно) фразу из текста искомого файла, для указания места поиска воспользуйтесь текстовым полем со списком, где и выберите диск, папку (для выбора другой папки воспользуйтесь командной кнопкой Обзор), нажмите командную кнопку Найти.

Контрольные вопросы:

1 Назначение и особенности ОС Windows.

2 Перечислите основные элементы Рабочего стола.

3 Какие объекты соответствуют значкам?

4 Перечислите основные элементы окна. Чем отличается команда закрыть и свернуть?

5 Перечислите основные элементы диалогового окна.

6 Для чего служат ярлыки? Повлияет ли на зарегистрированные программы удаление ярлыка?

7 Назначение Корзины, Главного меню, Панели задач.

Упражнения для приобретения простейших умений работы с окнами:

1. Найти на рабочем столе Windows значок Мой компьютер. Установить на него указатель мыши и щелкнуть два раза левой клавишей мыши (откроется окно).

2. Найти на экране все элементы окна.

3. Переместить окно в правый угол экрана. Для того, чтобы переместить окно:

· поместите курсор в строку заголовка

· нажмите левую кнопку мыши и, не отпуская ее, перетащите окно

· отпустите кнопку мыши.

4. Измените размер окна. Чтобы изменить размер окна:

· поставьте курсор на одну из границ окна

· нажмите левую кнопку мыши и, не отпуская ее, перетащите границу в нужное место

· отпустите кнопку мыши.

5. Измените размер окна до минимума .

6. Используя линейки прокрутки, просмотрите содержимое окна.

7. Распахните окно во весь экран. Для этого найдите в строке заголовка кнопку , установите на нее курсор и нажмите левую клавишу мыши.

8. Восстановите исходный размер окна, нажав на кнопку .

9. Сверните окно Мой компьютер, нажав на кнопку .

10. Восстановите окно, щелкнув по значку Мой компьютер в панели задач.

11. Измените вид представления содержимого окна с помощью пункта меню Вид:

· щелкните по пункту меню Вид и выберите Мелкие значки

· щелкните по пункту меню Вид и выберите Таблица

· щелкните по пункту меню Вид и выберите Список

· самостоятельно вернитесь к исходной форме представления данных в окне.

12. Закройте окно Мой компьютер, щелкнув по кнопке .

Упражнения для приобретения дополнительных умений работы с окнами:

1. Запустите:

· текстовый процессор Microsoft Word,

· графический редактор Paint,

· текстовый редактор Блокнот,

· Калькулятор.

(Для этого используйте Главное меню - команду Программы…, при этом на Панели задач появляются кнопки открытых окон).

2. Измените размеры каждого окна, размер окна установите приблизительно равным 1/4 размера экрана.

3. Расположите окна так, чтобы они не перекрывали друг друга.

4. Расположите окна каскадом, мозаикой.

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

5. Закройте все окна.

6. Перенесите Панель задач (влево, вправо, вверх), затем верните на место.

7. Измените размеры Панели задач, восстановите прежние размеры.

(Эта операция выполняется как с обычным окном)

Упражнения по настройке окна и поиску компьютеров, папок и файлов:

1. Раскройте окно папки Мой компьютер.

2. Используя команду меню Вид измените представление значков (крупные, мелкие, список, таблица).

3. Скройте панель инструментов и строку состояния, выбрав данные команды в меню Вид . Повторным выбором данных команд восстановите панель инструментов и строку состояния.

4. Найдите, используя команду Поиск главного меню:

· компьютер Class4;

· файл WinWord.exe;

· папку User…

5. Запустите программу Word на выполнение.

6. Сверните окно документа, затем окно программы.

7. Используя вкладку Дата диалогового окна «Найти: Все файлы», найдите все файлы, измененные за два последних дня.

8. Используя команду Главного меню Документы, откройте любой файл из списка имеющихся.

Графический интерфейс Windows

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

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

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

Работа с мышью. Для работы с графическим интерфейсом используется мышь или другое координатное устройство ввода, при этом пользователь должен уметь производить:

  • левый щелчок - однократное нажатие и отпускание основной (обычно левой) кнопки мыши;
  • правый щелчок - однократное нажатие и отпускание дополнительной (обычно правой) кнопки мыши;
  • двойной щелчок - два нажатия основной кнопки мыши с минимальным интервалом времени между ними;
  • перетаскивание - нажатие левой или правой кнопки мыши и перемещение объекта с нажатой кнопкой.

Рабочий стол. Основную часть экрана занимает Рабочий стол , на котором располагаются значки и ярлыки (значки с маленькими стрелочками в нижнем левом углу). Значки и ярлыки обеспечивают (с помощью двойного щелчка) быстрый доступ к дискам, папкам, документам, приложениям и устройствам.

Значки появляются на Рабочем столе после установки Windows. В левой части экрана обычно располагаются значки Мой компьютер, Сетевое окружение, Корзина и Мои документы.

Для быстрого доступа к дискам, принтеру, часто используемым документам целесообразно создать на рабочем столе ярлыки. Ярлык отличается от значка тем, что обозначает объект, фактически расположенный не на Рабочем столе , а в некоторой другой папке. Стрелочка означает, что мы имеем не сам объект, а ссылку на него. Ярлыки создаются перетаскиванием значков объектов на Рабочий стол .

Знакомство с графическим интерфейсом Windows

1. Создать на Рабочем столе ярлыки всех дисков, принтера и сканера.

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

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

Кнопка Пуск позволяет вызывать Главное меню , которое обеспечивает доступ практически ко всем ресурсам системы и содержит команды запуска приложений, настройки системы, поиска файлов и документов, доступа к справочной системе и др.

Windows является многозадачной операционной системой, то есть параллельно могут выполняться несколько приложений. Каждое запущенное приложение обозначается кнопкой на Панели задач , при этом переход от работы в одном приложении к работе в другом может производиться с помощью щелчка по кнопке. Работающее (активное) приложение изображается на панели задач в виде нажатой кнопки.

В крайней правой части Панели задач находятся Часы . Левее часов располагаются индикаторы состояния системы. Например, индикатор Ru обозначает, что в текущий момент используется русская раскладка клавиатуры.

3. Левым щелчком мыши можно раскрыть индикатор и переключиться на английскую раскладку, а правым - открыть диалоговую панель Свойства и выбрать требуемое сочетание нажатия клавиш на клавиатуре для переключения раскладок.


Окна. Важнейшим элементом графического интерфейса Windows являются окна, действительно ведь "windows" в переводе означает "окна". Существуют два основных типа окон - окна приложений и окна документов .

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

Основными элементами окна приложения являются:

  • рабочая область: внутренняя часть окна, содержит вложенные папки или окна документов;
  • границы: рамка, ограничивающая окно с четырех сторон. Размеры окна можно изменять, перемещая границу мышью;
  • заголовок: строка непосредственно под верхней границей окна, содержащая название окна;
  • значок системного меню: кнопка слева в строке заголовка открывает меню перемещения и изменения размеров окна;
  • строка горизонтального меню: располагается непосредственно под заголовком, содержит пункты меню, обеспечивает доступ к командам;
  • панель инструментов: располагается под строкой меню, представляет собой набор кнопок, обеспечивает быстрый доступ к некоторым командам;
  • кнопки Свернуть, Развернуть/Восстановить, Закрыть расположены в верхней правой части окна.

Окна документов. Окна документов предназначены для работы с документами и "живут" внутри окон приложений. Можно раскрывать, сворачивать, перемещать или изменять размеры этих окон, однако они всегда остаются в пределах окна своего приложения. Окно документа имеет те же кнопки управления, что и окно приложения.

Окно документа всегда содержит зону заголовка (содержащую имя документа) и часто полосы прокрутки (появляющиеся, когда документ не помещается полностью в окне) и линейки. Открытое окно документа может находиться в активном либо в пассивном состоянии. Если окно находится в пассивном состоянии (зона заголовка не выделена цветом), то, щелкнув по любой его части мышью, можно перевести его в активное состояние.

4. После запуска приложения Word его окно появится на Рабочем столе . Если открыть в Word два документа, то в окне приложения появятся окна двух документов. Одно окно может быть развернуто и активно, другое - свернуто и пассивно.


Меню. Меню является одним из основных элементов графического интерфейса и представляет собой перечень команд (как правило, тематически сгруппированных), из которых необходимо сделать выбор (поместив на пункт меню указатель мыши и произведя щелчок). Выбор пункта меню приводит к выполнению определенной команды. Если за командой меню следует многоточие, то ее выбор приведет к появлению диалоговой панели, которая позволяет пользователю получить или ввести дополнительную информацию.

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

Вкладки. Диалоговые панели могут включать в себя несколько "страниц", которые называются вкладками.

5. После ввода команды [Найти-Файлы и папки...] появится диалоговая панель Найти: Все файлы . Эта панель содержит три вкладки: Имя и местоположение, Дата, Дополнительно . Выбор вкладки осуществляется левым щелчком.

Командные кнопки. Нажатие на кнопку (щелчок) обеспечивает выполнение того или иного действия, а надпись на кнопке поясняет ее назначение. Так, щелчок по кнопке с надписью Найти позволяет начать процесс поиска.

Текстовые поля. Текстовое поле называется иногда полем редактирования и позволяет ввести какую-либо текстовую информацию.

6. Например, если пользователь хочет найти файлы, содержащие слово "информатика", то его необходимо ввести в текстовом поле Искать текст: вкладки Имя и местоположение диалоговой панели Найти: Все файлы .

Для этого следует осуществить левый щелчок в поле и ввести текст.


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

7. Раскрывающийся список Где искать: диалоговой панели Найти: Все файлы позволяет указать диск или папку (например, папку Мои документы ), в которой будет осуществлен поиск.

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

8. Так, на вкладке Дата диалоговой панели Найти: Все файлы имеются два переключателя: основной (на два варианта) и дополнительный (на три варианта). В процессе поиска файлов, установив основной переключатель в положение Найти все файлы , а дополнительный в положение между , можно ограничить область поиска периодом изменения файлов (в данном случае с 14.09.99 по 13.12.99).


Флажки. Флажок обеспечивает присваивание какому-либо параметру определенного значения. Флажки могут располагаться как группами, так и поодиночке. Флажок имеет форму квадратика; когда флажок установлен, в нем присутствует "галочка". Установка флажков производится с помощью левого щелчка.

9. На вкладке Имя и местоположение диалоговой панели Найти: Все файлы , установив флажок Включая вложенные папки , можно обеспечить необходимую глубину поиска файлов.

Счетчики. Счетчик представляет собой пару стрелок, которые позволяют увеличивать или уменьшать значение в связанном с ними поле. Так, при поиске файла на вкладке Дата диалоговой панели Найти: Все файлы значения полей, задающих период изменения файла, можно менять с помощью счетчиков. Для увеличения соответствующего значения необходимо произвести щелчок по стрелке, направленной вправо, а для уменьшения - по стрелке, направленной влево.

Ползунки. Ползунок позволяет плавно изменять значение какого-либо параметра. Например, с помощью ползунков можно менять уровень громкости воспроизведения и записи звука, баланс левого и правого канала и т. п.

10. После двойного щелчка на индикаторе громкости, который находится на Панели задач , появится диалоговая панель Регулятор громкости с ползунками громкости и баланса каналов.


Контекстные меню. Объектно-ориентированный подход, используемый в операционной системе Windows, позволяет рассматривать диски, папки и файлы как объекты. Все эти объекты имеют определенные свойства, и над ними могут проводиться определенные операции.

Например, документы (документом называется любой файл, обрабатываемый с помощью приложений) имеют определенный объем и их можно копировать, перемещать и переименовывать; окна имеют размер, который можно изменять и так далее.

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

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

11. Для того чтобы ознакомиться со свойствами диска, надо выбрать в контекстном меню пункт Свойства - появится диалоговая панель Свойства: Диск 3,5 (А) . Панель содержит четыре вкладки: Общие, Сервис, Оборудование, Доступ . На вкладке Общие содержится информация о типе файловой системы, общей, свободной и занятой информационной емкости диска и др.

Вопросы для размышления

1. Чем отличается окно документа от окна приложения?

2. Какие основные элементы могут содержать диалоговые панели?

Практические задания

4.9. Проверить правильность установки даты, времени и часового пояса на вашем компьютере.

4.10. Ознакомиться со свойствами папки и документа.

Consol::WriteLine(“Привет мир!”);

Обработка событий в программах, которые создаются не вручную, а в системах программирования, строятся с помощью обработчиков событий.

Обработчик – это автоматически сгенерированная функция, связанная с определенными событиями.

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

Тема №2 «Объектно-ориентированный подход к программированию»

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

Невозможность понять, воспринимать программный код целостным и логичным образом, создает серьезные трудности получения качественного программного продукта.

Борьба со сложностью ведется разными путями. Существуют общие и специфические пути.

К общим относят: декомпозицию системы на простые части, многоуровневую организацию, а также ряд других методов.

К специфическим относят технологии программирования.

Объектный подход является одним из хорошо зарекомендовавшим себя на практике подходов к построению сложных программных систем. На его основе разрабатываются ОС, создаются библиотеки прикладных программ. Многие из этих библиотек имеют объектную организацию, что заставляет прибегать к категориям объектов и классов, даже в том случае, если сам язык программирования не является объектно-ориентированным.

Объектный подход базируется на нескольких принципах. Все они направленны на то, что бы представлять любую систему совокупностью классов, связанных друг с другом определенными отношениями.

Абстрагирование – это выделение важного, существенного, которое характеризует свойства и поведение системы, или отдельное её части.

Целью абстрагирования является выделение объектов – сущностей, которые распознаются, выделяются из мира и которые ведут себя особым образом.

Абстрагирование носит достаточно субъективный характер. Это означает ее многовариантность. Выделить классы и отношения можно многими способами. Качество абстрагирования оценивается исходя из прикладной задачи.

Наследование отражает стремление представить систему в виде нескольких уровней. По этой причине чаще употребляют термин «иерархия наследования». Наследование между классами дает возможность передавать поведение, свойства, а так же структуру класса в целом.

Наследование может быть единичным или множественным.

Единичное Множественное

Различные объектно-ориентированные языки программирования используют один из видов наследования. Например, в С++ - множественное, а в Java - допускается только единичное наследование.


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

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

Полиморфизм улучшает восприятие и понимание программного кода.

Инкапсуляция заключается в том, что все детали программной реализации поведения объектов скрываются от внешних пользователей.

Пользователи – это программы и их функции, которые используют класс..

Инкапсуляция, в-первую очередь, скрывает данные. Любой набор данных определяет состояние объекта, если состояние объекта доступно внешним пользователям, то они могут его изменять. Поскольку класс не контролирует эти изменения, их последствия непредсказуемы.

При разработке класса свойства в виде данных скрываются путем введения методов Setxxx() и Getxxx().

Отношения между классами

Структура классов отображается, часто, с помощью нотации языка UML.

В UML класс обозначается как:

«+» - открытые

«-» - инкапсулированные (закрытые)

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

Тема №3 «Отношения между классами»

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

Второе соотношение, которое связывает классы – это агрегирование . Отношение агрегирования предусматривает, что экземпляры одного класса объектов могут включать экземпляр других классов.

Агрегируемые объекты способны реализовать свои функции через вызовы агрегирующего объекта. Например, через методы формы можно заблокировать кнопки.

Система в целом, таким образом, приобретает новую функциональность подобно тому, как это происходит путем наследования. Таким образом, наследование и агрегирование являются равноценными приобретениями новых функций.

Композиция классов – это отношения подобные агрегированию, но отличающиеся тем, что требуется обязательное существование экземпляров классов, входящих в отношения.

Отношение ассоциации (ассоциативная связь) – это отношение имеет место в тех случаях, когда методы одного класса используют свойства и методы другого класса.

Чаще всего ассоциацией изображается взаимодействие клиентов и серверов. Сервер является объектом, который представляет свои свойства и методы другим объектам.

Используя принципы объектного подхода, разработчик создает объектную модель своего приложения, в нее входят описание классов и отношение классов.

Процесс получения объектной модели называют, объектной декомпозицией.

Качество объектной декомпозиции оцениваются следующим образом:

ü Количество классов, не должно быть большим (порядка 10);

ü Число связей стараются минимизировать;

ü Однородность предполагает, что система состоит из одинаковых (очень похожих) элементов.

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

ü Устойчивость к изменениям задачи.
Неустойчивость считается объектная модель, в которой новая функциональность требует изменение существующих классов.
Устойчивой считается та, в которой новая функциональность реализуется как дополнение.

ü Повторное использование.
Если классы или объектные модели в целом сконструированы разумно, то они могут быть применены повторно при разработке других систем. Чаще всего это является следствием абстрагирования.

Интерфейс и реализация класса.

Описание класса на многих языках программирования состоит из интерфейса и реализации.

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

На С++ интерфейс, чаще всего, записывается в файлах с расширением .h .

Реализация класса состоит из программного кода методов.

На С++ реализацию помещают в файлы с расширением .cpp.

Если в классе имеются функции без реализации, то класс называется абстрактным.

Абстрактные классы используются в качестве базовых в иерархиях наследования.

Методы объявленные в базовых наполняются реализацией в произвольных классах.

Тема №4 «Конструктор и деструкторы»

Среди методов класса особую роль играют два типа методов: конструкторы и деструкторы.

Конструктор предназначен для выполнения всех действий необходимых для создания экземпляра объекта. Конструктор запрашивает все необходимые ресурсы, в которых нуждается экземпляр. Обычно это память для хранения свойств, а так же ссылки на программный код методов класса. Кроме этого могут устанавливаться сетевые соединения и выполняться какие-либо специальные процедуры связанные, например, с защитой и безопасностью.

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

Конструкторы с параметрами предназначены для того, чтобы создавать непустые экземпляры объектов. В качестве параметра конструктора задаются исходные данные для конструирования. Ими могут быть в частности любые другие типы или классы. В программном коде компилятором перегружается нужный конструктор. Например, объект строка может иметь конструктор для целых чисел, чисел с плавающей точкой, символьных массивов и т.д.

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

Метод деструктор предназначен для уничтожения экземпляра объекта и возврата выделенных ресурсов ОС. Деструктор не имеет параметров и является единственным в классе. Деструкторы вызываются неявным образом при выходе из программного блока. Все локальные объекты, как известно, должны быть уничтожены. Деструкторы выполняют уничтожение и делают это единственным образом.

На языке С++ деструктор называется также как класс, но с символом тильда (~).

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

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

В программном коде для облегчения вызовов методов и свойств используют указатель this. Он не требует описания, но всегда соответствует контексту того класса объектов, для которого пишется программный код.

Тема №5 «Коллекция объектов»

Коллекция объектов является высокоуровневой структурой данных, которая реализована во многих библиотеках в объектном стиле. Коллекции объектов позволяют оперировать множествами произвольных объектов, которые связаны между собой некоторыми смысловыми связями. Эти связи характерны для целых групп задач. Чтобы упростить манипулирование такими множествами, в библиотеки вводят понятие коллекции.

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

Примером отношений, которые могут существовать между объектами являются очередь или стэк.

Очередь предполагает, что элементы организованы в последовательность, причем добавление и удаление происходит специфическим образом: добавляются элементы только в конец, а извлекаются только с начала.

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

В библиотеке.Net классы коллекций доступны в пространстве имен system::collection.

Классы с буквы I – интерфейс классы, абстрактные, без реализации.

Класс ArrayList позволяет создавать коллекции объектов последовательного характера. Здесь имитируется отношение характерное для списковой структуры.

Среди свойств ArrayList имеются свойства связанные с отображением и управлением длиной коллекции.

Свойство count возвращает количество элементов коллекции, и используется только для чтения.

Свойство Capacity (ёмкость) позволяет указать верхнее граничное значение числа элементов коллекции. Попытка добавить дополнительный элемент приведет к генерации (выбросу) исключения.

Свойство Item позволяет обратить к конкретному элементу коллекции.

Все коллекции содержат методы добавления элементов.

Метод Add – позволяет добавить новый элемент в ArrayList, и это добавление осуществляется в конец коллекции.

В классе ArrayList имеется метод BinarySearch – дихотомического поиска (половинного деления), следует обратить внимание отсортирован ли ArrayList и как выполняется операция сравнения с эталоном поиска.

Метод Contains предназначен для определения того присутствует ли заданный экземпляр объекта в коллекции. При использовании этого метода необходимо обратить внимание на то, как понимается эквивалентность двух объектов. Например, самым слабым предположением об эквивалентности может быть принадлежность к одному и тому же классу объектов. Наиболее сильным предположением может считаться двоичное совпадение областей памяти занимаемых объектами.

Метод IndexOf используется для нахождения заданного элемента (эталона) в коллекции. Метод возвращает индекс найденного элемента.

Метод LastIndexOf делает тоже, что и IndexOf, но с конца коллекции.

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

Метод Sort позволяет сортировать элементы коллекции. Чтобы это сделать должна быть определена операция сравнения.

Класс BirArray дает возможность оперировать битами. В классе BirArray присутствует методы для выполнения логических операций над байтами.

Тема №6 «Класс HashTable»

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

Свойство Keys это элемент коллекции, отображающий все ключи, имеющиеся в данной коллекции.

Свойство Values аналогично является набором значений элементов хеш-таблицы.

Метод ContainsKey определяет, присутствует ли в коллекции элемент с указанным ключом. Данный метод используют, например, перед добавлением информации в хэш-таблицу с тем, чтобы избежать исключения, которое возникает в случае попытки добавления элемента с существующем ключом.

Метод ContainsValue определяет, содержится ли заданное значение, среди множества значений коллекции.

Класс Queue (Очередь)

Метод Enqueue добавляет элемент в очередь. Предполагается, что элемент размещается в конце очереди и постепенно продвигается к началу, по мере того, как другие элементы из очереди исключаются.

Метод Dequeue извлекает элемент из очереди. Извлекается всегда первый элемент, при этом все остальные сдвигаются.

Метод Peek показывает, какой элемент является в очереди первым, возвращает его значения без изменения порядка в очереди.

В коллекциях бывают методы для преобразования в другие типы. Например, в коллекции Queue имеется метод ToArray и ToString преобразующие очередь соответственно в массив или строку.

Метод TrimToSize позволяет установить емкость, выше которой в коллекцию ничего не добавляется.

Взаимодействие пользователя с приложением

Взаимодействие пользователя лучше всего описывается в виде различных событий, которые инициируют ЭУ (на основе сообщений ОС о действиях пользователя) и на которые отвечает (обрабатывает) приложение. Наиболее часто используемыми событиями являются следующие:

Ÿ Click – щелчок левой кнопки «мыши» в области окна;

Ÿ DoubleClick – два щелчка левой кнопки «мыши» с интервалом меньше некоторого заданного значения;

Ÿ KeyDown – нажатие клавиши клавиатуры;

Ÿ KeyPress – нажатие и отпускание клавиши, в результате которых в программу передается некоторый символ;

Ÿ Validating – проверки введенных данных;

Ÿ Paint – необходимо перерисовать клиентскую область.

События от устройства «мышь», такие, как Click , DoubleClick, MouseDown, MouseUp, MouseEnter, MouseLeave и MouseHover, связаны с различными действиями пользователей над областью ЭУ.

Для событий Click и DoubleClick передается параметр типа EventArgs, а для событий MouseDown и MouseUp передается параметр типа MouseEventArgs, который содержит такую полезную информацию (свойства класса), как текущие координаты курсора в клиентской области, описание нажатой кнопки, количество нажатий кнопки, количество щелчков при вращении колеса «мыши».

События клавиатуры работают аналогично: количество передаваемой информации зависит от типа обрабатываемого события. Например, для события KeyPress в метод обработки события передается параметр KeyPressEventArgs, который содержит свойство KeyChar значение типа char, которое представляет символ нажатой клавиши.

Свойство Handled используется для определения того, было ли обработано данное событие. Если свойству Handled задано значение true, то данное событие не будет передаваться ОС для стандартной обработки. События KeyDown или KeyUp больше подходят для обработки, если требуется получить больше информации о нажатой клавише, так как они получают параметр KeyEventArgs. Параметр KeyEventArgs включает свойства о том, какие клавиши Ctrl, Alt или Shift были нажаты. Свойство KeyCode возвращает значение перечисления Keys, которое указывает на виртуальный код нажатой клавиши. В отличие от KeyPressEventArgs.KeyChar свойство KeyCode передает виртуальный код любой нажатой клавиши клавиатуры, а не алфавитноцифровой символ клавиши.

Свойство KeyData возвращает значение перечисления Keys, а также состояние дополнительных клавиш. Например, была ли нажата клавиша Shift или Ctrl. Свойство KeyValue содержит целое значение перечисления Keys. Свойство Modifiers содержит значения Keys, которые соответствуют кодам дополнительно нажатых клавиш. Если было нажато несколько клавиш, то они объединяются с помощью операции OR. События, связанные с клавишей инициируются в следующем порядке: 1) KeyDown; 2) KeyPress; 3) KeyUp.



События Validating, Validated, Enter, Leave, GotFocus и LostFocus имеют отношение к получению ЭУ фокуса ввода (когда ЭУ становится активным) или потери фокуса. Это происходит, когда пользователь нажимает клавишу Tab для перехода к нужному ЭУ или выбирает этот элемент с помощью «мыши». Кажется, что события Enter, Leave, GotFocus и LostFocus очень сходны по выполняемой работе. События GotFocus и LostFocus являются событиями более низкого уровня, которые связаны с WM_SETFOCUS и WM_KILLFOCUS сообщениями ОС. Обычно лучше использовать события Enter и Leave. События Validating и Validated возникают при проверке значения в ЭУ. Они получают параметр типа CancelEventArgs. С его помощью можно прервать следующие события, если задать свойству Cancel значение true. Если разработчик задает собственный код проверки введенных значений и проверка оказалась не успешной, то можно задать свойству Cancel значение true и ЭУ не будет терять фокус ввода (не будет выполняться переход к следующему ЭУ формы). Событие Validating возникает в ходе проверки, а событие Validated возникает после выполнения проверки. Эти события возникают в следующем порядке: 1) Enter; 2) GotFocus; 3) Leave; 4) Validating; 5) Validated; 6) LostFocus.

Обычное Windows приложение содержит несколько форм , которые создаются с помощью объектов класса Form. Данный класс также является ЭУ и наследуется от базового класса Control. Одни формы приложения открываются в процессе работы, другие закрываются. В каждый текущий момент на экране может быть открыта одна или несколько форм, пользователь может работать с одной формой или переключаться по ходу работы с одной на другую.

Форма, открываемая в методе Main() при вызове метода Run() класса Application, называется главной формой приложения . Ее закрытие приводит к закрытию всех остальных форм и завершению Windows приложения. Завершить приложение можно и программно, вызвав статический метод Application.Exit(). Закрытие других форм не приводит к завершению проекта. Обычно главная форма приложения всегда открыта, в то время как остальные формы открываются и закрываются (или скрываются).

Для создания формы лучше всего (что и делается в Visual Studio) создать новый класс, производный от класса Form. В конструкторе класса можно задать требуемые значения свойств данного класса и включить в данную форму все требуемые объекты. В приведенном ниже примере создан класс MyForm. Объекты данного класса будут соответствовать окну, которое содержит нужные элементы управления и обрабатывает события, связанные с окном и элементами управления.

using System.Windows.Forms;

namespace WindowsApp {

static void Main(string args){

MyForm frm = new MyForm("Первое окно");

Application.Run(frm);

class MyForm: Form {

Button btn1 = new Button();

public MyForm(string s){

btn1.Top = 10; btn1.Left = 20;

btn1.Text = "Нажми";

Controls.Add(btn1);

btn1.Click +=new EventHandler(btn1_Click);

Как уже было сказано, для передачи сообщений из очереди приложения в главную форму используется метод Application.Run(), которому передается ссылка на созданный объект формы. Данный метод организует цикл передачи сообщений в формы приложения. Он прекращает свою работу только при поступлении в очередь сообщения WM_QUIT, которое поступает при закрытии основного окна формы (нажатие кнопки ) или выборе команды меню для окончания работы с приложением (например: Выход или Exit).

Для отображения элементов управления в форме необходимо создать соответствующие им объекты, задать нужные значения их свойствам и добавить их в коллекцию формы Controls. Например:

Button btn1 = new Button();

btn1.Top = 10; btn1.Left = 20; // задание расположения

btn1.Text = "Нажми"; // задание текстового заголовка

Controls.Add(btn1); // занесение в коллекцию элементов

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

Например, для обработки события нажатия описанной ранее кнопки, описывается обработчик события, который присваивается переменной события класса:

// описание обработчика события

public void btn1_Click(object o, EventArgs ea){

MessageBox.Show("Привет, Мир!");

btn1.Click += new EventHandler(btn1_Click);

Результат работы данной программы показан на рис. 8.4.

Рис. 8.4. Результат работы программы WindowsApp.