С Новым годом! Форум программистов, компьютерный форум, киберфорум
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 28
1

Ассемблер.повторное нажатие клавиши и использование таймера

27.05.2013, 10:59. Показов 2357. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
tasm
Есть программа, в которой прорисовывается фигура и при нажатии любой клавиши должна начинаться смена цвета. Подскажите, пожалуйста, как сделать, чтобы при повторном нажатии той же клавиши или после 7 секунд смена цвета останавливалась
Процедура смены цвета:

Код
changcv proc 
     inc color 
     call zvezda 
     jmp changcv 
ret
основная программа
Код
... 
begin: mov AX,data 
         mov DS,AX 
         mov AX,00h 
         mov AL,10h 
         int 10h 
clear: mov AH,09h ;очистка экрана 
        mov DX,offset esc1 
        int 21h 
draw: mov AL,color ;вызов процедуры прорисовки фигуры 
        call zvezda 
input: 
        mov AH,08h 
        int 21h 
        cmp AL,1Bh 
        je exit ; если Esc то выход 
        cmp AL,48h 
        je vverh ;перемещение вверх 
        cmp AL,50h 
        je vniz ;вниз 
        cmp AL,4Bh 
        je vlevo ;влево 
        cmp AL,4Dh 
        je vpravo ;вправо 
        call changcv ;процедура смены цвета 
        jmp input 
...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.05.2013, 10:59
Ответы с готовыми решениями:

Повторное нажатие на клавиши
Есть скрипт, в котором при нажатии спавнит преф(картинку), и удаляет остальные(делаю игру волк...

Перехват и повторное нажатие клавиши
Здравствуйте Форумчане. Созрел такой вопрос на счет системной ловушки. Необходимо чтобы когда...

Запуск методов на нажатие и повторное нажатие на Button
Добрый день! Кто может подсказать, как реализовать такую схему работы кнопки (button) Есть кнопка...

Повторное заполнение progressBar из таймера
есть progressbar и есть timer все подсоединил , все работает (один раз ) я хочу что бы эта...

3
1127 / 261 / 9
Регистрация: 11.06.2010
Сообщений: 1,049
27.05.2013, 18:34 2
про повторное нажатие:
при нажатии клавиши нужно записать её код в какую-нибудь переменную и сравнивать все последующие нажатия с данным кодом. Если совпало, останавливаем.

Про 7 секунд:
организуем переменную, в которой будем хранить число секунд, прошедшее с последнего нажатия. по прошествии одной секунды увеличиваем значение переменной на 1. если в переменной число 7, останавливаем процесс изменения цвета. если нажата клавиша, сбрасываем значение переменной в 0.
1
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 28
28.05.2013, 23:01  [ТС] 3
Спасибо большое! А как сделать так, чтобы и смена цвета не останавливалась, пока таймер считает, и таймер считал?
0
1127 / 261 / 9
Регистрация: 11.06.2010
Сообщений: 1,049
28.05.2013, 23:23 4
так в цикле цвет меняем и таймер проверяем.
0
28.05.2013, 23:23
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.05.2013, 23:23
Помогаю со студенческими работами здесь

Эмулировать нажатие кнопки мыши или нажатие клавиши на Web - странице
Здравствуйте. Как на эмулировать переходы по страницам на сайте, открытом в Интернет эксплорере!....

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

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

Повторное нажатие =
При создании калькулятора необходимо чтобы при повторном (троекратном, etc.) нажатии на кнопку "="...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Как программировать под HCL Notes и создавать свои продукты на ее основе
InfoMaster 11.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой мощную платформу для разработки корпоративных приложений, которая сочетает в себе функции электронной почты, календаря,. . .
Как работать с SVN (Subversion)
InfoMaster 11.01.2025
Введение Система контроля версий является неотъемлемой частью современного процесса разработки программного обеспечения. Она обеспечивает управление изменениями в коде, позволяет отслеживать. . .
Использование GraphQL в JavaScript
InfoMaster 11.01.2025
Введение в GraphQL и его преимущества В современной разработке веб-приложений эффективный обмен данными между клиентом и сервером играет ключевую роль. GraphQL представляет собой язык запросов и. . .
Администрирован­­­­ие Git, продвинутые техники работы с Git
InfoMaster 11.01.2025
Основы управления репозиторием Эффективное управление Git-репозиторием требует глубокого понимания механизмов контроля доступа и инструментов администрирования. Рассмотрим ключевые аспекты. . .
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru