Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.02.2014, 11:37   #1
MeynSpain
Пользователь
 
Регистрация: 22.01.2014
Сообщений: 15
По умолчанию запрограммировать image что бы при нажатии стрелочки вверх он прыгнул, а потом опустился на тоже место

Скажите пожалуйста как запрограммировать image что бы при нажатии стрелочки вверх он прыгнул а потом опустился на тоже место
MeynSpain вне форума Ответить с цитированием
Старый 14.02.2014, 11:55   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

изменете Left, Top координаты компонента
Человек_Борща вне форума Ответить с цитированием
Старый 14.02.2014, 12:10   #3
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

MeynSpain Советую смотреть в сторону FireMonkey (Delphi XE2 - XE5). Там такие вещи делаются ещё на стадии проектирования формы.
doktor255 вне форума Ответить с цитированием
Старый 14.02.2014, 12:40   #4
MeynSpain
Пользователь
 
Регистрация: 22.01.2014
Сообщений: 15
По умолчанию

Я имею в виду какой код программы будет. Потому что я незнаю как это написать
MeynSpain вне форума Ответить с цитированием
Старый 14.02.2014, 13:02   #5
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

MeynSpain Стрелочка вверх это что? И что значит прыгнул? Направление? Расстояние? Скорость? Корректно формулируй задачу.
doktor255 вне форума Ответить с цитированием
Старый 14.02.2014, 13:02   #6
MeynSpain
Пользователь
 
Регистрация: 22.01.2014
Сообщений: 15
По умолчанию

Цитата:
Сообщение от doktor255 Посмотреть сообщение
MeynSpain Стрелочка вверх это что?
Стрелочка вверх - это кнопка на клавиатуре
MeynSpain вне форума Ответить с цитированием
Старый 14.02.2014, 13:05   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Потому что я незнаю как это написать
Это плохо. А вообще какой-нибудь код умеешь писать? Вот для мышки
Код:
procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image1.Left:=Image1.Left-2;
  Image1.Top:=Image1.Top-2;
end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image1.Left:=Image1.Left+2;
  Image1.Top:=Image1.Top+2;
end;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.02.2014, 13:11   #8
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

Цитата:
Сообщение от MeynSpain Посмотреть сообщение
Стрелочка вверх - это кнопка на клавиатуре
Полнейшая глупость. Image это картинка. Она по определению не должна обрабатывать ввод с клавиатуры.
doktor255 вне форума Ответить с цитированием
Старый 14.02.2014, 13:11   #9
MeynSpain
Пользователь
 
Регистрация: 22.01.2014
Сообщений: 15
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Это плохо. А вообще какой-нибудь код умеешь писать? Вот для мышки
Код:
procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image1.Left:=Image1.Left-2;
  Image1.Top:=Image1.Top-2;
end;

procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Image1.Left:=Image1.Left+2;
  Image1.Top:=Image1.Top+2;
end;
Большое спасибо
MeynSpain вне форума Ответить с цитированием
Старый 14.02.2014, 13:16   #10
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Для стрелок() (KeyPreview формы не забудь в True)
Код:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if not (Key in [VK_DOWN,VK_UP]) then Exit;
  Image1.Left:=Image1.Left-2;
  Image1.Top:=Image1.Top-2;
end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if not (Key in [VK_DOWN,VK_UP]) then Exit;
  Image1.Left:=Image1.Left+2;
  Image1.Top:=Image1.Top+2;
end;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать что при нажатии переходило по ссылке??? quarty Общие вопросы Delphi 6 10.10.2010 19:55
при нажатии на кнопку, в Label1 выодилось то, что написанно в Edit1 Seede1 Помощь студентам 7 10.10.2010 19:16
что происходит при нажатии power bnv Компьютерное железо 5 09.03.2009 14:39
Узнать, что посылаю при нажатии кнопки KiDoki Свободное общение 3 08.02.2009 22:59
Как проверить наличие в конкретной папке DLL, а потом на вход каждой подать массив байт,и на выходе тоже. Sanches_Ramires Общие вопросы .NET 1 02.02.2009 15:02