Получение информации о системе. Программирование для Windows: принципы и понятия
Windows — многозадачная среда с графическим интерфейсом. Windows позволяет приложению взаимодействовать с дисплеем, клавиатурой, мышью, принтером, последовательным портом и системными таймерами, вне зависимости от конкретной модели устройства.
MFC – это базовый набор (библиотека) классов, написанных на языке С++ и предназначенных для упрощения и ускорения процесса программирования под Windows. Перед изучением библиотеки MFC и ее использованием для создания Windows-приложений, следует вспомнить, как работает сама Windows и каковы принципы взаимодействия программ с ней, какова структура типичной Windows-программы.
Выбор семейств шрифтов. Окно Windows. Элементы интерфейса Windows.
По трем из рассмотренных признаков (ширина штриха, ширина символов и наличию засечек) в Windows принято выделять так называемые семейства шрифтов. Для того, что бы пояснить разницу между принятыми семействами, приведем небольшую табличку, содержащую сводку характеристик разных семейств шрифтов в Windows:
Семейство | Ширина штриха | Ширина символов | Наличие засечек | примеры |
MODERN | постоянная | постоянная | — | Courier New |
ROMAN | переменная | переменная | есть | Times New Roman, Antiqua, Garamond, Palatino, Bodoni |
SWISS | переменная | переменная | нет | Arial, Helvetica, Futura, Avantgarde, Optima, Swiss |
SCRIPT | — | — | — | Script, Odessa Script FWF, Decor, Jikharev, Parsek |
DECORATIVE | — | — | — | Windings, MusicalSymbols, Symbol |
DONTCARE | — |
Обычно к семейству MODERN относят все шрифты фиксированной ширины. Название MODERN указывает на сравнительно недавнюю историю этих шрифтов — они получили распространение с развитием печатающей техники и компьютеров, тогда как другие виды шрифтов возникали с XV века, когда заканчивалась эпоха готического шрифта.
В те времена начинал формироваться шрифт, похожий по своему начертанию на один из древнейших шрифтов — римский капитальный. Это был пропорциональный шрифт с засечками и нормальной контрастностью, позже он получил очень широкое распространение в типографском деле и дожил до наших дней. За свою долгую историю он многократно видоизменялся и стал родоначальником большого числа поколений шрифтов. В Windows такие шрифты относятся к семейству ROMAN.
Реально этому семейству соответствует очень большое число разных шрифтов, выделяемых в других классификационных системах. В частности, можно выделить так называемые брусковые шрифты, обычно со слабо выраженным контрастом и засечками, перпендикулярными штрихам и имеющими примерно такую же ширину (пример — Courier); В XX веке возникли шрифты, получившие очень широкое распространение. Наиболее распространенное название для этих шрифтов — рубленые. Эти шрифты не имеют контраста и засечек (sans serif), в Windows им соответствует семейство SWISS. Семейство DONTCARE реально не соответствует никакой группе шрифтов. Оно используется только при указании, из какого семейства надо выбирать шрифт — при этом оно обозначает “любое семейство”.
Окона в Windows
Окно – это не просто прямоугольная область на экране, а некоторый объект, предназначенный для организации взаимодействия между пользователем и приложением.
В операционной системе Windows используется несколько разновидностей окон. В зависимости от назначения и способа использования окна в операционной системе Windows делятся на:
сообщений и предупреждений;
В операционной системе Windows для выполнения программы почти всегда открывается связанное с ней окно. С помощью такого окна пользователь взаимодействует с выполняющейся программой, управляет ее работой. Говорят, что программа выполняется в окне. Окна, в которых выполняются программы, называются программными окнами (прикладными окнами, окнами приложений). Программные окна считаются основными, главными окнами.
Окна, предназначенные для размещения различного рода документов, текстов, рисунков, пиктограмм, с которыми работает выполняющееся приложение, называются окнами документов. Они считаются подчиненными окнами. Окна документов открываются только во время выполнения какой-либо программы по специальному указанию пользователя или автоматически. Располагаться они могут только внутри окна создавшей их программы.
Как было выяснено ранее, диалоговые окна появляются на экране при выполнении некоторых команд меню. Они используются для управления ходом выполнения программы, а также для передачи необходимой для ее выполнения информации. Примеры диалоговых окон и работа с ними рассматриваются немного ниже.
Для выдачи различного рода дополнительной информации пользователю операционная система Windows во время работы использует окна сообщений и предупреждений. Например, в них выдаются предупреждения о возможно неправильных действиях пользователя, которые могут привести к потере информации. Окна сообщений и предупреждений выводятся на экран операционной системой автоматически по мере возникновения необходимости. Всплывающие окна используются для вывода на экран дополнительной информации, связанной с гипертекстовой ссылкой. Они появляются после специальных действий пользователя по выбору гиперссылки. Примеры таких окон приведены далее при обсуждении работы отдельных приложений.
Окна приложений и документов могут находиться в одной из трех возможных форм, которые называются полноэкранной, нормальной и свернутой (пиктографической) формами. В любой момент времени эти окна могут быть переведены из своей текущей формы в любую другую форму.
Окно в полноэкранной форме занимает всю поверхность рабочего стола, полностью закрывая все остальные окна. В этом представлении окно не может перемещаться и изменять свои размеры.
Окно в нормальной форме не имеет постоянных, однозначно определенных размеров. Обычно нормальное окно занимает площадь, примерно равную двум третям от площади полноэкранной формы. Основным отличием этой формы является возможность пользователя по своему усмотрению изменять положение и размеры нормального окна на рабочем столе.
И, наконец, в свернутой форме окно имеет минимально возможные размеры, изменение которых без изменения формы невозможно. Программные окна при свертывании вообще удаляются с рабочего стола. Они представлены только кнопкой окна, остающейся в панели задач. Свернутые окна документов могут находиться только внутри программных окон, в которых они созданы. Но внутри программного окна положение окна документа можно изменить произвольным образом.
В отличие от программных окон и окон документов, диалоговые окна, а также окна сообщений и предупреждений имеют только одну форму, в которой они могут только перемещаться по поверхности рабочего стола. Изменение размеров у этих окон не предусмотрено, а всплывающие окна не могут даже перемещаться
Элементы интерфейса Windows
Операционная система Windows базируется на методологии объектного подхода, в соответствии с которым весь мир и любая его часть рассматриваются как совокупность взаимодействующих между собой объектов. Объекты обладают определенными свойствами и поведением. Причем различные объекты обладают различными свойствами и поведением.
Чтобы понять сущность объектного подхода, рассмотрим, например, простую и часто встречающуюся ситуацию приобретения некоторого товара. В упрощенном виде ситуацию можно рассматривать как взаимодействие трех объектов: «продавец», «покупатель» и «товар». Объект «продавец» может быть охарактеризован свойством «назначенная цена», объект «покупатель» — свойством «предлагаемая цена», а «товар» — свойством «качество». К поведению данных объектов можно отнести стремление продавца увеличить, покупателя — сбавить цену, а товар может терять свое качество. Оказалось, что с помощью такого подхода можно эффективно и качественно разрабатывать очень сложные программные, в том числе и операционные, системы.
Пользовательский интерфейс Windows, как и сама система в целом, построен в соответствии с принципами объектного подхода. Основными элементами пользовательского интерфейса операционной системы Windows являются следующие объекты: рабочий стол, окна, значки, панели, меню, папки, приложения и документы. К объектам относятся также любые аппаратные и программные ресурсы компьютера. Да и компьютер в целом тоже считается объектом. Ниже рассматривается назначение указанных основных объектов интерфейса, а их свойства и поведение обсуждаются по ходу изложения материала, по мере необходимости.
Рабочий стол.В операционной системе Windows весь экран дисплея рассматривается как модель рабочего места специалиста, на котором создана необходимая для обработки информации обстановка, как своеобразная «поверхность рабочего стола», на котором размещаются некоторые документы и различные средства для работы с ними, такие как, например, «чертежные инструменты», «калькулятор», «пишущая машинка» и т.д.
Рабочим столом называется элемент интерфейса пользователя, который обеспечивает эффективный доступ пользователя ко всем ресурсам компьютера, к наиболее часто используемым программам, документам и аппаратным средствам, а при наличии соответствующих соединений — и к ресурсам локальной и глобальной сетей.
Все остальные элементы интерфейса так или иначе привязываются к рабочему столу. На нем размещаются окна, значки документов, программ и устройств, а также различные панели, содержащие какие-либо группы значков.
Окно.Каждый документ, каждый инструмент (программа, устройство) представлен на рабочем столе отдельным окном. Окна Windows являются гибкими и мощными конструкциями, обеспечивающими пользователю значительный уровень удобств во время работы. Окна Windows используются для управления ходом выполнения программ, а также для организации обмена информацией между пользователем и программами. На рабочем столе одновременно может находиться произвольное количество окон. Окна могут изменять свои размеры и положение на столе, они могут, как два листа бумаги на реальном столе, накладываться друг на друга и даже полностью перекрывать одно другое.
Окном называется элемент интерфейса пользователя, представляющий собой автономную часть экрана, предназначенную для организации взаимодействия между пользователем и определенной программой или некоторой ее частью.
Окно, как правило, отделяется от остальной части экрана рамкой и выделяется каким-либо цветом. В нем могут размещаться тексты, рисунки, таблицы, поля для ввода информации, специальные элементы управления программой и т.д,
Окно Мой компьютер используется для доступа ко всем имеющимся аппаратным и программным ресурсам компьютера, на котором установлена операционная система, а окно Корзина используется для восстановления случайно уничтоженных программ или документов.
Элементы управления окном.Для приема различного рода управляющих воздействий со стороны пользователя в операционной системе Windows используются различные элементы управления: кнопки, флажки, поля ввода, списки и т.д.
Кнопка.Наиболее часто в окнах встречаются кнопки, с помощью которых пользователь отдает операционной системе команду начать выполнение некоторой последовательности действий.
Кнопкой называется элемент интерфейса пользователя, принимающий управляющее воздействие пользователя и запускающий после этого некоторую последовательность действий.
В стандартном случае кнопка имеет вид прямоугольника или квадрата, внутри которого находится название кнопки, или значок, объясняющий ее назначение. Кнопки в Windows являются полным аналогом кнопок управления, широко используемых в бытовых устройствах, приборах, механизмах. Например, кнопки включения питания у телевизора, пылесоса, компьютера и т.д. Подробнее элементы управления рассматриваются ниже.
Вообще говоря, пиктограмма — это небольшая, выразительная, часто стилизованная картинка, значок. Ранее пиктограммами назывались условные знаки, которые использовали в так называемом пиктографическом, рисуночном письме для изображения предметов, событий, действий у некоторых народов Севера и у американских индейцев. Сейчас пиктограммы используются повсеместно: в спортивной символике, общественных местах, на транспортных магистралях и т.д. Выразительная картинка вместо надписи понятна любому человеку, независимо от его национальности и уровня грамотности.
Значком или пиктограммой называется элемент интерфейса пользователя, представляющий собой небольшую картинку, изображение, служащее для обозначения аппаратных и программных ресурсов компьютера.
Значки используются для обозначений различных объектов интерфейса: рабочего стола, дисковых устройств, принтеров, программ, документов и т.д. Значки, соответствующие наиболее важным объектам интерфейса или наиболее часто используемым приложениям и документам, располагаются прямо на поверхности рабочего стола. Значки Мой компьютер и Корзина всегда находятся на поверхности рабочего стола. Если компьютер подключен к локальной сети, то на рабочем столе обязательно присутствует значок Сетевое окружение, с помощью которого обеспечивается вызов окна доступа к ресурсам локальной сети. А при наличии выхода в глобальную сеть Интернет на столе обязательно присутствует значок Internet программы доступа к ней. Все остальные значки размещаются на поверхности стола или удаляются с нее по специальным указаниям пользователя.
Панель.На рабочем столе может находиться одна или несколько панелей, которые обычно имеют вид прямоугольной вертикальной или горизонтальной полосы, окрашенной в некоторый контрастный по сравнению с рабочим столом цвет. Панель используется для размещения на ней различных значков, элементов управления и индикации состояния операционной системы Windows.
Панелью называется элемент интерфейса пользователя, служащий для объединения группы логически взаимосвязанных значков, элементов управления и индикации состояния операционной системы Windows.
В нижней части рабочего стола находится основная панель Windows, которую принято называть панелью задач. Она играет важную роль в организации работы с окнами. Кроме того, на ней находится набор индикаторов программ, которые выполняются в так называемом фоновом режиме. Правый участок панели задач, содержит набор индикаторов. Набор индикаторов имеет переменный состав. Обычно он включает индикаторы текущего времени и текущего языка.
Выполнение программы в фоновом режиме означает, что программа постоянно находится в оперативной памяти в состоянии ожидания, в состоянии готовности к выполнению действий. Как только процессор освобождается от текущей работы или наступает какое-либо заранее предусмотренное событие, такая программа захватывает процессор, и начинается ее выполнение. Примером могут послужить антивирусные программы-сторожа. Как только появляются признаки деятельности вирусов, они активизируются и выполняют предусмотренные действия по определению наличия вирусов и их уничтожению. После завершения действий или по требованию обычных программ программы, работающие в фоновом режиме, освобождают процессор и переходят в состояние ожидания.
Меню.Пользователь управляет работой операционной системы Windows, так же как и работой операционной системы MS DOS, — с помощью команд. Однако команды не нужно вводить с клавиатуры. Во многих случаях чтобы выполнить какое-либо действие, достаточно выбрать подходящий вариант из заранее подготовленного списка, который в операционной системе Windows принято называть меню.
Меню называется элемент интерфейса пользователя, представляющий собой горизонтальный или вертикальный список альтернативных вариантов команд, действий, режимов, установок и т.д., из которых пользователь должен выбрать только один вариант. Отдельные варианты, из которых состоит список, принято называть пунктами или строками меню.
В операционной системе Windows используется несколько различных типов меню; основное, системное, операционное, спускающееся, локальное (динамическое, контекстное) меню и т.д. Основное меню используется для завершения работы компьютера, для доступа к справочной системе, программам настройки операционной системы, зарегистрированным в системе программам и документам, а также к некоторым другим важным инструментам и возможностям операционной системы. В Windows существует только одно основное меню. К тому же основное меню практически не изменяется. Системное меню содержит названия команд операционной системы, которые изменяют положение, размеры и форму окна, содержащего данное системное меню. Выбор одного из пунктов системного меню приводит к выполнению команды, название которой находится в выбранном пункте. Каждое окно обязательно имеет свое собственное системное меню. Системные меню всегда расположены вертикально.
Операционные меню имеются только у окон, связанных с выполнением какого-либо приложения. Они всегда расположены горизонтально. Операционные меню различных окон отличаются друг от друга. Выбор пункта операционного меню приводит к выводу на экран дополнительного, вертикального меню, которое обычно называют подменю, меню пункта, спускающимся или развертывающимся меню. Для каждого пункта операционного меню выводится индивидуальное, отличное от других, меню. Элементами меню пунктов являются названия команд управления работой приложения.
С каждым объектом интерфейса операционной системы Windows связана еще одна разновидность меню — локальные меню. Локальные меню обычно отсутствуют на экране и вызываются (разворачиваются) по специальному указанию пользователя. Вообще говоря, локальные меню являются некоторой частью операционного меню. Локальные меню, в зависимости от тещ/щей ситуации на экране, могут появляться с различным набором пунктов, именно поэтому их еще называют контекстными или динамическими меню. Кроме того, локальные меню не привязаны к определенному месту в окне, а могут располагаться в различных его точках и даже на поверхности рабочего стола.
Папка.Для повышения удобства работы с программами и документами в операционной системе Windows предусмотрен объект с названием папка с файлами или просто папка. Выделенную по какому-либо признаку группу документов и/или приложений можно «положить» в папку и работать с этой группой как с единым целым. Здесь совершенно четко просматривается аналогия и по назначению, и по названию с обычной папкой для бумаг. Фактически папка с файлами операционной системы Windows является подкаталогом на каком-либо дисковом устройстве. В силу этого в папке могут находиться произвольные файлы, а не только файлы документов и приложений.
Папкой с файлами называется элемент интерфейса пользователя, предназначенный для группировки файлов, программ и документов по какому-либо признаку.
На жестком диске С: находится папка Program files, В ней находятся дочерние папки Accessories, Common Files, Chat и т.д. Внутри папки Accessories находятся папки Backup, Hyper Terminal и файлы Mspaint.exe, Wordpad.exe и т.д. Обратите внимание, что папка Accessories является дочерней по отношению к папке Program files, с другой стороны, она является родительской для папок Backup, Hyper Terminal и в ней находятся файлы Mspaint.exe, Wordpad.exe.
Теперь если мы хотим указать местоположение, скажем, файла Mspaint.exe, то для этого следует последовательно перечислить все родительские папки, которые следует «открыть», чтобы «увидеть» нужный файл. В данном случае это папки Program files и Accessories диска С:, что кратко можно записать в виде C:\Program files\Accessories. Таким образом, мы вновь приходим к уже знакомому понятию пути (маршрута) к файлу. Напомним, что путь может указываться не только к файлу, но и к папке.
Папкам соответствует значок, похожий на закрытую папку. На некоторых значках могут быть изображены пиктограммы объектов, связанных с папкой. В операционной системе Windows предусмотрена стандартная папка с названием Мои документы. Ей соответствует значок, похожий на раскрытую папку. Предполагается, что в эту папку пользователь помещает созданные им документы. Хотя это совершенно не обязательно. В папку Мои документы можно поместить любой документ или приложение, а свои документы пользователь может положить в любую другую папку. Тем не менее, обычно пользователи стараются придерживаться правила хранения своих документов в этой папке.
В операционной системе Windows понятие «папка» имеет более широкое чем только что рассмотренное толкование.
В общем случав папка представляет собой объект, который обеспечивает единообразие терминологии и действий по доступу к любым ресурсам, организованным по иерархическому принципу.
Для обеспечения доступа к любым ресурсам, кроме обычных папок, в операционной системе Windows вводятся так называемые системные папки, с помощью которых можно, например, обеспечить доступ к принтерам, подключенным к данному компьютеру.
Системные папки служат для доступа к любым аппаратным и программным ресурсам компьютера или сети, в том числе и к обычным папкам.
Итак, папки делятся на системные и папки с файлами. Папки с файлами, являясь фактически подкаталогами дисковых устройств, служат только для доступа к файлам на дисках, а системные папки служат еще и для доступа к любым аппаратным ресурсам. Системные папки, в отличие от папок с файлами, образуются операционной системой автоматически, в то время как папки с файлами создаются и уничтожаются по специальным командам пользователя.
В дальнейшем изложении для краткости под словом «папка» будет пониматься «папка с файлами».
Приложение и документ.Определение этих терминов приведено выше. Заметим только, что фактически и приложение, и документ являются файлами операционной системы,
Ярлык.Важным частным случаем значков являются ярлыки.
Ярлыком называется значок устройства, папки, программы, документа или произвольного файла, который обеспечивает ускоренную работу с соответствующим объектом.
Ярлык содержит информацию о фактическом положении папки или файла (путь к папке, файлу) либо команду обращения к какому-либо устройству. Поэтому использование ярлыка значительно уменьшает время поиска нужного объекта, а также упрощает обращение к нему. Ярлык может находиться не только на рабочем столе. Для повышения удобства доступа к дисковому устройству, принтеру, папке, программе, документу или файлу ярлык любого из этих объектов можно поместить в любую папку.