Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Управление объектом с помощью клавиатурыСодержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте Для управления клавиатурой в Delphi используются следующие события: 1. OnKeyDown – событие, которое возникает при нажатии любой клавиши на клавиатуре, включая функциональные и специальные. 2. OnKeyUp – событие, которое происходит при отпускании клавиши на клавиатуре. Коду нажатой или отпущенной клавиши соответствует параметр Key. При управлении клавиатурой с помощью этих событий параметр Key имеет целочисленный тип. Key представляет собой код виртуальной клавиши Windows.
Текст программного кода будет следующим:
В этой программе параметр Shift указывает состояние клавиши Alt (нажата или нет). Этот параметр также определяет состояние клавиш Ctrl и Shift.
3. OnKeyPress – событие, которое возникает, когда нажата и отпущена клавиша на клавиатуре. Оно отличается от событий OnKeyDown и OnKeyUp тем, что параметр Key, передаваемый в метод обработки, имеет не целочисленный, а символьный тип Char. Событие OnKeyPress возникает при вводе с клавиатуры символа ASC II, т.е. оно не генерируется, например, при нажатии функциональных клавиш. Обработчик события вызывается только при нажатии буквенных, цифровых клавиш, а также некоторых комбинаций клавиш. Каждому символу, как видимому, так и невидимому, а значит и каждой клавише клавиатуры соответствует определенный код ASCII. Для получения символа по его коду в языке Delphi используется либо функция Chr, либо запись вида # код. В таблице 1 приведены расширенные коды клавиш.
Таблица 1 ASC II кода
Рассмотрим пример проекта с использованием события OnKeyPress.
Создадим графический интерфейс по образцу рис. 25. Для этого на форме разместим два компонента TImage. В объект Image1 загрузим изображение прицела, в объект Image2 – изображение пульки. У объекта Image2 установим свойство Visible равным false.
Рис. 25 Графический интерфейс окна
Создадим обработчик события OnKeyPress. В нем сначала опишем движение прицела вместе с пулькой вправо при нажатии на клавишу Обработчик события OnKeyPress будет следующим:
Задания 1. Создать проект «Морской бой», в котором клавишами управления курсором следует навести прицел на движущийся корабль. При нажатии на клавишу Enter прицел должен выстрелить в корабль пулькой. Если пуля попадет в корабль, то образуется взрыв. 2. Изменить проект «Морской бой» таким образом, чтобы после поражения корабля, он появлялся вновь у левой границы. В проекте должно отображаться количество попаданий в корабль. 3. Создать проект «Морской бой» с режимом игры на двоих, при котором возможна стрельба и из прицела и с корабля. В проекте должно отображаться число попаданий каждого игрока и определяться победитель. 4. Создать программу, имитирующую движение по форме белого кубика нажатием клавиш управления указателем. Кубик должен увеличивать свои размеры при нажатии клавиши Insert и уменьшать при нажатии клавиши Delete. 5. Составить проект рисования дома и обеспечить возможность зажигать и гасить свет в доме. Включение и выключение света в окне должно выполняться: с клавиатуры; с помощью мыши. 6. Написать игровую программу, в которой необходимо попасть мячиком по кирпичикам. Мяч находится на движущейся подставке и управляется с помощью мыши. При попадании кирпич исчезает. После окончания времени выводится итоговое сообщение о количестве попаданий.
Работа со строками
Объекты строкового типа string довольно часто встречаются в программах, написанных на языке Delphi, поэтому рассмотрим подробней свойства и методы этих объектов. Строковый тип данных Строковый тип данных служит для хранения строк или цепочки символов. Переменная строкового типа объявляется следующим образом: Var str1: String; или Var str1: String [длина] где: Str1 – имя переменной; string – ключевое слово обозначения строкового типа; длина – константа целого типа, которая задает максимально допустимую длину строки. Если в объявлении строковой переменной длина строки не указана, то ее длина задается равной 255 символам. Используя операции =, <, >, <=, >=, переменную типа string можно сравнить с другой переменной типа string или со строковой константой. Строки сравниваются посимвольно, начиная с первого символа. Если все символы сравниваемых строк одинаковые, то такие строки считаются равными. Если в одинаковых позициях строк находятся разные символы, большей считается та строка, у которой в этой позиции находится символ с большим кодом. Кроме операции сравнения, к строковым переменным и константам можно применить операцию сложения. В результате выполнения этой операции получается новая строка. Например, в результате выполнения команд: first__name: ='Иван'; last_name:='Иванов'; ful_name:=first_name+last_name; переменная ful_name получит значение ‘Иван Иванов’.
Основные свойства и методы объектов строкового типа (объектов TString) рассмотрим в следующем пункте на примере работы с текстовой областью.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2017-01-25; просмотров: 925; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.146 (0.011 с.) |