Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Введення за допомогою миші

Події

План

Тема: Обробка подій миші

Лекція № 12

 

1. Події

2. Введення за допомогою миші

3. Створення обробників повідомлень миші

 

У цьому розділі розглядаються способи організації введення даних за допомогою миші і клавіатури. У першому розділі описується стандартна система введення даних, використовувана операційною системою Windows для контролю стану введення (input state). Тут також приділяється увага розгляду концепції локального стану введення (local input state), вперше реалізованого в операційній системі Windows NT і використовуваного тепер у всіх 32-розрядних версіях Windows.

Потім розглядається введення за допомогою миші. Завдяки бібліотеці базових класів Microsoft (MFC — Microsoft Foundation Classes) часи низькорівневої коди обробки подій миші залишилися у далекому минулому (безумовно, якщо у розробника достатньо вільного часу, він може дозволити собі і таку розкіш). У даному розділі описуються методи MFC, забезпечуючий контроль і маніпулювання мишею, а також розглядаються такі питання, як зовнішній вигляд (форма) курсора миші, захоплення миші і обмеження переміщення курсора миші.

І на закінчення розглянемо способи, що дозволяють додатку використовувати введення з клавіатури. Застосовуючи такі елементи призначеного для користувача інтерфейсу, як поле введення, можна надати Windows і MFC можливість самостійно виконувати всі завдання по обробці введення з клавіатури. Проте достатньо часто буває необхідний жорсткіший контроль над подіями клавіатури. В ході обговорення цієї теми торкнуться такі поняття, як фокус введення з клавіатури (keyboard focus), текстовий курсор (точка введення) (keyboard cursor (insertion point)), стан виділення (selection state) і багато інших елементів конструкції призначеного для користувача інтерфейсу, пов'язані з введенням з клавіатури.

Для більшості програмістів, загартованих розробкою застосувань, що не мають відношення до Windows, управління подіями, характерне для операційної системи Windows, складає певну проблему, коли вони вперше приступають до розробки подібних застосувань. У контексті обробки призначеного для користувача введення термін керований подіями (event-driven) означає, що при кожному натисненні користувачем клавіші або клацанні мишею замість коди опиту, відповідного натисненню клавіш або клацанню мишею, операційна система передає додатку повідомлення Windows {WM — windows message). Бібліотека MFC співвідносить (map) повідомлення Windows з функціями C++, званими обробниками повідомлень (message handler). Оператори, оброблювальні дані, що вводяться в додаток, розташовані саме в цих функціях-обробниках повідомлень. У попередньому розділі розглядалися обробники повідомлень меню, а в справжньому розділі поговоримо про обробників повідомлень подій миші і клавіатури. Спочатку розглянемо стан введення миші, а потім і клавіатури.

 

Як вже мовилося, Windows повідомляє вікна програм про дії користувача, сылая ним повідомлення, що зберігаються в апаратній черзі введення (input queue). Табл. містить список основних повідомлень Windows для миші, обробники яких використовують ця для організації реакції на дії користувача.

 

Таблиця. Повідомлення Windows для миші

Повідомлення Причина повідомлення
WM_LBUTTONDOWN Ліва кнопка миші нажата1 (курсор знаходиться в клієнтській області вікна)
WM_LBUTTONUP Ліва кнопка миші відпущена
WM_RBUT TON DOWN права кнопка миші натиснута (курсор знаходиться в клієнтській області вікна)
WM_RBUTTONUP Права кнопка миші відпущена
WM_MBUTTONDOWN Середня кнопка миші натиснута (курсор знаходиться в клієнтській області вікна)
WM_MBUTTONUP Середня кнопка миші відпущена
WM_MOUSEMOVE Курсор миші переміщається в клієнтській області вікна

 

Імена повідомлень починаються з префікса WM (Windows Message), вказуючого, що це повідомлення Windows.

 

<== предыдущая лекция | следующая лекция ==>
Нормативні та регулюючі документи | Нормативні та регулюючі документи. Створення обробників повідомлень миші
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 430; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.