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

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

27.05.2013, 10:59. Показов 2341. Ответов 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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
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
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.05.2013, 23:23
Помогаю со студенческими работами здесь

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru