Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.63/16: Рейтинг темы: голосов - 16, средняя оценка - 4.63
alesha popovich
0 / 0 / 0
Регистрация: 25.10.2014
Сообщений: 24
#1

Движение шарика при нажатии клавиши вверх вниз влево вправо

27.10.2014, 18:31. Просмотров 2842. Ответов 3
Метки нет (Все метки)

Приветствую вас.Надо сделать что бы шарик двигался при нажатии клавиши вверх вниз влево вправо.
Это у меня получилось но шарик постоянно мигает(ну я не знаю как по другому назвать это).
И как сделать что бы программа выключалась при нажатии Escape?
Как это убрать?
Вот мой код:
Pascal
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
uses graphabc;
var x,y,x1:integer;
procedure klavisha(key:integer);
begin
 if key=VK_Up then y:=y-10;
 if key=VK_Down then y:=y+10;
 if key=VK_Left then x:=x-10;
 if key=Vk_Right then x:=x+10;
  end;
procedure sharic;
begin
onkeydown:=klavisha;
 
setbrushcolor(clBrown);
circle(x,y,20);
end;
 
begin
x1:=0;
x:=windowwidth div 2;
y:=windowheight div 2;
while 1=1 do begin
sharic;
clearwindow;
end;
end.
Заранее спасибо.

Добавлено через 10 минут
Прошу прощения.Строки 4 3 перепутаны.

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2014, 18:31
Ответы с готовыми решениями:

Дописать программу, чтобы квадратик двигался вправо-вниз-влево-вверх
Здравствуйте,прошу помощи. Надо сделать,чтобы квадрат продолжил движение...

Изобразить стрелку и осуществить движение по клавишам "вверх", "вниз", "вправо", "влево"
Необходимо изобразить стрелку и осуществить движение по клавишам "вверх",...

Заполнить матрицу от центра по спирали: вниз - влево - вверх - вправо
Заполнить матрицу ЛП, от центра по спирали: вниз - влево - вверх - вправо.

Заполнить матрицу от левого верхнего угла по спирали: вниз-вправо-вверх-влево
Заполнить матрицу ЛП, от левого верхнего угла по спирали:...

Составить программу движения круга вверх, вниз, влево, вправо в зависимости от нажатия клавиш
Задача: Вроде как тему "функции readkey и keypressed' более менее понял, но...

3
Puporev
Модератор
54217 / 41850 / 28922
Регистрация: 18.05.2008
Сообщений: 98,526
27.10.2014, 19:12 #2
Лучший ответ Сообщение было отмечено alesha popovich как решение

Решение

Pascal
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
28
29
30
31
32
33
34
35
uses graphabc;
var x,y:integer;
    f:boolean;
procedure klavisha(key:integer);
begin
case key of
VK_Up:y:=y-10;
VK_Down:y:=y+10;
VK_Left:x:=x-10;
Vk_Right:x:=x+10;
Vk_Escape:begin
          CloseWindow;
          f:=false;
          end;
end;
end;
procedure sharic;
begin
setbrushcolor(clBrown);
circle(x,y,20);
end;
 
begin
f:=true;
x:=windowwidth div 2;
y:=windowheight div 2;
lockdrawing;
repeat
clearwindow;
onkeydown:=klavisha;
sharic;
sleep(50);
redraw;
until not f;
end.
Добавлено через 4 минуты
Чтобы за экран не уходил
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
procedure klavisha(key:integer);
begin
case key of
VK_Up:if y>30 then y:=y-10;
VK_Down:if y<windowheight-30 then y:=y+10;
VK_Left:if x>30 then x:=x-10;
Vk_Right:if x<windowwidth-30 then x:=x+10;
Vk_Escape:begin
          CloseWindow;
          f:=false;
          end;
end;
1
SerejkaLojka
0 / 0 / 0
Регистрация: 08.12.2016
Сообщений: 6
13.12.2016, 15:55 #3
Как это сделать с модулем Crt ?
0
Puporev
Модератор
54217 / 41850 / 28922
Регистрация: 18.05.2008
Сообщений: 98,526
13.12.2016, 15:59 #4
SerejkaLojka, Создайте свою тему где точно и подробно опишите свою задачу, и если не простой АВС, а net или вообще другой, то и тему создавайте в том разделе.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.12.2016, 15:59

Реализовать движение влево-вправо подводного челнока
Помогите реализовать движение влево в право вот етого подводного челнока...

Графика.Движение автобуса, управляемого стрелками вправо и влево
Графика.Движение автобуса, управляемого стрелками вправо и влево.

Составить программу,которая при нажатии,клавиши "д" рисует солнце,при нажатии клавиши "н" рисует луну
Помогите пожалуйста сделать


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru