Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

4.1 Статические элементы управления

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

4.2 Кнопки

Кнопки – это элементы управления, которые реагируют на однократное нажатие мышью. Есть несколько типов кнопок. Нажимаемые кнопки по нажатию посылают своим окнам-владельцам сообщение WM_COMMAND. Кнопка с независимой фиксацией может пребывать в одном из двух состояний: включенном или выключенном. Существует разновидность такой кнопки с тремя состояниями (третье – запрещенное). Кнопки с зависимой фиксацией часто используются в виде группы кнопок, позволяющей выбрать одно из нескольких взаимно исключающих состояний.

4.3 Элементы редактирования

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

4.4 Окно списка

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

НЕ нашли? Не то? Что вы ищете?

4.5 Комбинированное окно списка

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

4.6 Полосы прокрутки

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

4.7 Стандартные элементы управления Windows 95

В Windows 95, по сравнению с предыдущими версиями Windows, был определен новый набор стандартных элементов управления (рис. 3.11).

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

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

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

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

Индикаторы заполнения позволяют проинформировать пользователя о ходе выполнения какой-либо длительной операции. Они служат только в информационных целях и не обрабатывают событий от пользователя.

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

Элемент редактирования сложного текста имеет больше возможностей, чем старый элемент редактирования. Этот элемент позволяет работать с файлами формата Microsoft RTF (Rich Text Format). По сути дела, этот элемент является текстовым редактором средней сложности.

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

Среди других элементов управления Windows 95 можно назвать элементы "анимационный ролик", "заголовок", "панель инструментов", "подсказка" и др.

5. Резюме

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

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

У окон верхнего уровня может быть окно-владелец. отличное от его родительского окна, а у дочерних окон окно-владелец и родительское окно одинаковы.

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

В Win32 API определен набор функций для создания, отображения и управления диалоговыми окнами. В Windows есть два типа диалоговых окон: модальные и немодальные. Модальное окно, пока присутствует на экране, запрещает свое окно-владелец. Поэтому приложение приостанавливается до тех пор, пока пользователь не закроет модальное окно.

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

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

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

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

6. Упражнения.

1)  Изучите англо-русский словарь терминов по теме 3-й лекции (см. CD-ROM).

2)  Выполните лабораторную работу №1, "Типы окон Windows" (см. CD-ROM).

Лекция 4. Обзор библиотеки MFC

1. Назначение библиотеки MFC

Microsoft Foundation Classes (сокращенно MFC) – это библиотека классов на языке Си++, разработанная фирмой Microsoft в качестве объектно-ориентированной оболочки для Windows API. Существуют и другие библиотеки классов для Windows, но преимущество MFC в том, что она написана компанией-разработчиком ОС. MFC постоянно развивается, чтобы соответствовать возможностям новых версий Windows.

MFC содержит около 200 классов, представляющих практически все необходимое для написания Windows-приложений: от окон до элементов управления ActiveX. Одни классы можно использовать непосредственно, а другие – в качестве базовых для создания новых классов. Некоторые классы MFC очень просты, например, класс CPoint для хранения двумерных координат точки. Другие классы являются более сложными, например, класс CWnd инкапсулирует функциональность окна Windows. В приложении MFC напрямую вызывать функции Windows API приходится редко. Вместо этого программист создает объекты классов MFC и вызывает их функции-члены. В MFC определены сотни функций-членов, которые служат оболочкой функций API, и часто их имена совпадают с именами соответствующих функций API. Например, для изменения местоположения окна в API есть функция SetWindowPos. В MFC это действие выполняется с помощью функции-члена CWnd::SetWindowPos.

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

В каркасе приложения MFC есть понятия высокого уровня, которых нет в Windows API. Например, архитектура "документ/вид" является мощной инфраструктурой, надстроенной над API и позволяющей отделить данные программы от их графического представления. Эта архитектура отсутствует в API и полностью реализована в каркасе приложения с помощью классов MFC.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32