Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
26
Добавлен:
08.05.2015
Размер:
9.65 Кб
Скачать

4-я Лабораторная работа Вариант1 Вариант2 Вариант3 Вариант4 Вариант5 Вариант6 Вариант7 Вариант8 4.Тема: СРЕДСТВА ВВОДА ИНФОРМАЦИИ 4.1. Цель работы Ознакомление с устройствами, осуществляющими ввод информации в компьютер (мышь, клавиатура), их программным представлением в операционной системе, а также с программными элементами взаимодействия пользователя и ЭВМ (диалоговые окна), получение практических навыков по составлению, написанию и отладке программ, осуществляющих взаимодействие ЭВМ-пользователь. 4.2.Указания по подготовке к выполнению лабораторной работы Необходимо изучить основные элементы интерактивных программ, работающих на персональных компьютерах. Большинство приложений Windows95 активно используют пользовательский ввод с клавиатуры, а также поддерживают работу с мышью. Обязательным является рассмотрение программного представления устройств ввода внутри ядра Windows, а также системные и несистемные аппаратные сообщения, посредством которых осуществляется передача данных приложениям. При подготовке к работе необходимо изучить конспект лекций по указанной теме, методические указания, а также разделы, указанные в [16, c.255-441], [17, c.88-101]. 4.3. Обзор темы работы Большинство программ, работающих под Windows активно используют средства интерактивного взаимодействия с пользователем - мышь, клавиатуру, а также программные средства - окна диалога.При работе с клавиатурой следует уделить особое внимание изучению следующих вопросов: фокус ввода, аппаратные и символьные сообщения, виртуальные коды клавиш, работа с кареткой. Мышь - это графическое устройство ввода информации с одной или более кнопками. Windows поддерживает однокнопочную, двухкнопочную или трехкнопочную мышь. Работа приложений с клавиатурой и мышью основана на системе сообщений. Любое действие (нажатие клавиш, перемещение мыши и т.п.) приводит к тому, что Windows посылает сообщение активному приложению. Данное сообщение обрабатывается оконной процедурой приложений. Следует отметить, что окна приложений обычно имеют в себе дочерние окна, к которым относятся кнопки (buttons), флажки (check boxes), переключатели (radio buttons), текст (text strings), полосы прокрутки (scroll bars), окна редактирования (edit boxes),списки (list boxes). Дочернее окно обрабатывает сообщения мыши и клавиатуры и извещает родительское окно о том, что состояние дочернего окна изменилось. В этом случае дочернее окно становиться для родительского устройством ввода. Оно инкапсулирует особые действия, связанные с графическим представлением окна на экране, реакцией на пользовательский ввод, и извещения другого окна при вводе важной информации. Имеется возможность создавать свои собственные дочерние окна управления. 4.4. Задание на лабораторную работу Варианты:

Вариант 1

Написать программу, которая следит за перемещением указателя мыши и выводит его координаты в окне приложения. Если при выходе за окно правая кнопка мыши нажата, программа продолжает следить за перемещением мыши и выводить ее координаты.

Вариант 2

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

Вариант 3

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

Вариант 4

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

Вариант 5

Написать программу, рисующую полигон при помощи мыши. Пользователь задает координаты точек при помощи левой кнопки мыши. Двойной щелчок сигнализирует о последней точке полигона.

Вариант 6.

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

Вариант 7.

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

Вариант 8.

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

Вариант 9.

Написать программу, рисующую олимпийские кольца. По нажатию клавиш с цифрами 1-5 одно из колец с соответствующим номером меняет свой цвет. То же самое происходит при щелчке мыши на одном из колец. 4.5. Контрольные вопросы и задания Какие средства ввода информации Вы знаете? Дайте определение таким понятием как и ? Чем отличаются аппаратные (keystrokes) и символьные (characters) сообщения? Какие сообщения от клавиатуры обрабатываются оконной процедурой? Перечислите сообщения, поступающие от мыши. Что такое ? Как вы думаете, можно ли получить сообщения от мыши, если курсор находится за пределами окна? Как рисовать за пределами окна приложения? Как обрабатываются нажатия кнопки в рабочей области окна, созданной функцией CreateWindow? Каким образом можно получить информацию о наличии мыши в системе и ее характеристики? Вариант1 Вариант2 Вариант3 Вариант4 Вариант5 Вариант6 Вариант7 Вариант8

Соседние файлы в папке Html