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

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

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

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

Code
1
2
3
4
5
changcv proc 
     inc color 
     call zvezda 
     jmp changcv 
ret
основная программа
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
... 
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) Есть кнопка "Включить" при нажатии на нее...

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

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

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru