Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 06.11.2010, 18:40
syuta syuta вне форума
Прохожий
 
Регистрация: 06.11.2010
Сообщения: 25
Репутация: 0
Вопрос Как обработать нажатие стрелок вверх, вниз

Как обработать нажатие стрелок вверх, вниз, так что бы в поле Edit 1 число увеличивалось на 1 когда жмешь вверх, или на -1 когда вниз.
Ответить с цитированием
  #2  
Старый 06.11.2010, 19:24
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 562
Версия Delphi: Delphi 11
Репутация: 18
Восклицание

Точно не помню по моему так

Код:
begin
case key of
38: edit1.text:=inttostr(strtoint(edit1.text)+1);
40: edit1.text:=inttostr(strtoint(edit1.text)-1);
end;
end;

не забудь что первоначальное значение на Edit должен быть число - а не текст
__________________
Нет ничего не возможного. Вопрос только во времени...

Последний раз редактировалось Electronic_Arts, 06.11.2010 в 19:27.
Ответить с цитированием
  #3  
Старый 06.11.2010, 20:36
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Вы видимо решили самокат изобрести SpinEdit - не для вас?
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #4  
Старый 07.11.2010, 10:51
syuta syuta вне форума
Прохожий
 
Регистрация: 06.11.2010
Сообщения: 25
Репутация: 0
Печаль

Цитата:
Сообщение от Страдалецъ
Вы видимо решили самокат изобрести SpinEdit - не для вас?

Я начинающий и не совсем понимаю о чем вы говорите.
Ответить с цитированием
  #5  
Старый 07.11.2010, 12:37
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 562
Версия Delphi: Delphi 11
Репутация: 18
Восклицание

SpinEdit это готовый компонент на Delphi - как раз то что ты ищешь...

- а я как всегда пошел тяжелым путем..
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
  #6  
Старый 07.11.2010, 13:04
syuta syuta вне форума
Прохожий
 
Регистрация: 06.11.2010
Сообщения: 25
Репутация: 0
По умолчанию

и как это реализовать? напишите код если можно, желательно с коментами
Ответить с цитированием
  #7  
Старый 07.11.2010, 13:25
syuta syuta вне форума
Прохожий
 
Регистрация: 06.11.2010
Сообщения: 25
Репутация: 0
Восклицание

Господа позвольте описать мою проблему полностью:
есть два поля edit в форме, когда запускаешь программу чтоб при нажатии стрелок вверх – вниз уменьшалось (или увеличивалось) число в первом окне ввода (на 1), а при нажатии стрелок влево – вправо уменьшалось (или увеличивалось) число во втором окне ввода (на 0,01).
Ответить с цитированием
  #8  
Старый 07.11.2010, 13:42
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 562
Версия Delphi: Delphi 11
Репутация: 18
Восклицание

Стрелок чего КЛАВИАТУРЫ?
если хочешь изменения значения при нажатии на клавишы на клаве
вот тебе код

Код:
begin
case key of
38: edit1.text:=inttostr(strtoint(edit1.text)+1); //Вверх
40: edit1.text:=inttostr(strtoint(edit1.text)-1); //Вниз
37: edit2.text:=inttostr(strtoint(edit1.text)-1); //Влево
39: edit2.text:=inttostr(strtoint(edit1.text)+1); //Вправо
end;
end;
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
  #9  
Старый 07.11.2010, 13:47
syuta syuta вне форума
Прохожий
 
Регистрация: 06.11.2010
Сообщения: 25
Репутация: 0
По умолчанию

Цитата:
Сообщение от Electronic_Arts
Стрелок чего КЛАВИАТУРЫ?
если хочешь изменения значения при нажатии на клавишы на клаве
вот тебе код

Код:
begin
case key of
38: edit1.text:=inttostr(strtoint(edit1.text)+1); //Вверх
40: edit1.text:=inttostr(strtoint(edit1.text)-1); //Вниз
37: edit2.text:=inttostr(strtoint(edit1.text)-1); //Влево
39: edit2.text:=inttostr(strtoint(edit1.text)+1); //Вправо
end;
end;

не работает!!
Ответить с цитированием
  #10  
Старый 07.11.2010, 13:47
syuta syuta вне форума
Прохожий
 
Регистрация: 06.11.2010
Сообщения: 25
Репутация: 0
По умолчанию

Да стрелок клавиатуры!
Ответить с цитированием
  #11  
Старый 07.11.2010, 13:54
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 562
Версия Delphi: Delphi 11
Репутация: 18
Восклицание

Не может быть
код это надо скопировать в обработчик OnKeyDown

Код:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
case key of
38: edit1.text:=inttostr(strtoint(edit1.text)+1); //Вверх
40: edit1.text:=inttostr(strtoint(edit1.text)-1); //Вниз
37: edit2.text:=inttostr(strtoint(edit2.text)-1); //Влево
39: edit2.text:=inttostr(strtoint(edit2.text)+1); //Вправо
end;
end;

Если опять не заработает - то дай сюда свою программу - допишу и отдам
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
  #12  
Старый 07.11.2010, 14:05
syuta syuta вне форума
Прохожий
 
Регистрация: 06.11.2010
Сообщения: 25
Репутация: 0
По умолчанию

Доработайте задачу , чтоб при нажатии стрелок вверх – вниз уменьшалось (или увеличивалось) число в первом окне ввода (на 1), а при нажатии стрелок влево – вправо уменьшалось (или увеличивалось) число во втором окне ввода (на 0,01).
Вложения
Тип файла: rar speed.rar (236 байт, 5 просмотров)
Ответить с цитированием
  #13  
Старый 07.11.2010, 14:06
syuta syuta вне форума
Прохожий
 
Регистрация: 06.11.2010
Сообщения: 25
Репутация: 0
По умолчанию

Буду при много благодарен если поможете!!!
Ответить с цитированием
  #14  
Старый 07.11.2010, 14:08
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 562
Версия Delphi: Delphi 11
Репутация: 18
Восклицание

Не хватает куча файлов

сохрани свой проект в одну папку и архивируй папку и выложи сюда
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
  #15  
Старый 07.11.2010, 14:10
syuta syuta вне форума
Прохожий
 
Регистрация: 06.11.2010
Сообщения: 25
Репутация: 0
По умолчанию

размер архива всего проекта не позволяет выложить на форум! выложу по очереди!
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 22:21.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025