Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Преимущества ввода посредством очереди.

Читайте также:
  1. XVIII. Против тех, которые усиливаются посредством рассматривания звезд предсказывать будущее, и о свободной воле человека.
  2. XXVII. Против утверждающих, что человеческий род имел размножаться посредством плотского совокупления и рождения, хотя бы и не согрешили праотцы.
  3. Борьба с основными пороками посредством молитвы и поста
  4. В чем же главные преимущества цифровых методов передачи, обработки и хранения информации?
  5. В чем заключаются преимущества и недостатки линейной модели коммуникации?
  6. Великодушный, который научил[человека письму] посредством калама, научил человека
  7. Взгляд изнутри и его преимущества

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

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

58. Общие принципы и средства программирования для Windows. Объектный подход: сообщения. Управление памятью. Независимость от оборудования. Динамически подключаемые библиотеки. Новый формат исполняемых файлов Windows.

 

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

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

Windows можно отнести к классу многозадачных ОС, основанных на передаче сообщений. В "глубине" ОС реализован механизм, преобразующий информацию от различных устройств ввода/вывода (события) в некоторую структуру данных – сообщение. Примерами событий являются нажатие клавиши, перемещение мыши, тик таймера. Типичное приложение (так обычно называются прикладные программы для Windows) строится на базе каркаса, содержащего цикл обработки сообщений. В этом цикле выполняется прием сообщений и передача их в соответствующие функции - обработчики сообщений.

Сообщения в Windows описываются с помощью структуры MSG:

typedef struct tagMSG {

HWND hwnd; // Идентификатор окна-получателя

UINT message; // Идентификатор сообщения

WPARAM wParam; // Дополнительная информация, смысл

LPARAM lParam; // которой зависит от типа сообщения

DWORD time; // Время посылки сообщения

POINT pt; // Местоположение указателя мыши

} MSG;

Переменная hwnd – это уникальный идентификатор окна, которому было послано сообщение. У каждого окна Windows есть свой числовой идентификатор. Переменная message является идентификатором самого сообщения. Различных сообщений в Windows несколько сотен, и у каждого собственный идентификатор. Для удобства вместо численных идентификаторов используются символические (например, WM_PAINT, WM_TIMER). Они определены в стандартных заголовочных файлах Windows (в программы на Си можно включать только файл windows.h; в нем, в свою очередь, содержатся директивы #include для включения остальных файлов). По назначению системные сообщения можно разбить на несколько групп. Имена сообщений каждой группы начинаются с одинакового префикса, например, WM для сообщений, связанных с управлением окнами или BM – для сообщений от кнопок. Набор системных сообщений не зафиксирован, новые сообщения могут добавляться по мере роста возможностей новых версий ОС.


Дата добавления: 2015-09-03; просмотров: 74 | Нарушение авторских прав


Читайте в этой же книге: Недостатки шаблонов | Стандартная библиотека шаблонов (STL). Назначение и состав библиотеки. Контейнеры. Последовательные контейнеры. Векторы. | Структура библиотеки | Последовательные контейнеры поддерживают указанный пользователем порядок вставляемых элементов. | Абстракция | Классы map и multimap | Сортировка. | Специальный класс string ( в методичках Белодеда по-другому, поэтому это только для ознакомления и на всякий случай) | Математические функции (math.h). Построение таблицы значений тригонометрических функций. | Интерфейс вызовов функций в Windows |
<== предыдущая страница | следующая страница ==>
Общие принципы и средства программирования для Windows. Графический интерфейс пользователя. Многозадачная среда. Преимущества ввода посредством очереди.| Окна в Windows

mybiblioteka.su - 2015-2024 год. (0.006 сек.)