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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2010, 06:32   #1
Blondинка
 
Регистрация: 01.11.2010
Сообщений: 3
По умолчанию KeyPress

Я здесь новичок... У меня тут маленькая проблемка в Делфи(

Событие keyPress почему-то не отлавливает нажатие стрелок...
Кому несложно, помогите, пожалуйста...
Blondинка вне форума Ответить с цитированием
Старый 01.11.2010, 06:44   #2
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Используйте KeyDown
Пример:
Код:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
        If Key = VK_LEFT  Then //стрелка влево
        Begin
                //действия
        End;
        If Key = VK_RIGHT Then //стрелка вправо
        Begin
                //действия
        End;
        If Key = VK_UP Then //стрелка вверх
        Begin
                //действия
        End;
        If Key = VK_DOWN Then //стрелка вниз
        Begin
                //действия
        End;
        If Key = VK_RETURN Then //Enter
        Begin
                //действия
        End;
end;
_-Re@l-_ вне форума Ответить с цитированием
Старый 01.11.2010, 06:58   #3
Blondинка
 
Регистрация: 01.11.2010
Сообщений: 3
По умолчанию

Спасибо большое) Не додумалась что-то до keyDown)
Blondинка вне форума Ответить с цитированием
Старый 01.11.2010, 07:19   #4
DeKot
Участник клуба
 
Аватар для DeKot
 
Регистрация: 12.08.2008
Сообщений: 1,977
По умолчанию

Добавлю, что вместо оператора if ... then лучше применять оператор выбора case
Код:
case Key of
   VK_Right: begin
               {действие}
             end;
   VK_Left: begin
              {действие}
             end;
   VK_Up:    begin
               {действие}
             end;
   VK_Down: begin
               {действие}
             end;
   end;
И не сомневайся даже ... отдых - кайф, работа - лажа!
DeKot вне форума Ответить с цитированием
Старый 01.11.2010, 07:21   #5
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

DeKot, вы правы.Что-то я запамятовал.
_-Re@l-_ вне форума Ответить с цитированием
Старый 01.11.2010, 16:51   #6
Blondинка
 
Регистрация: 01.11.2010
Сообщений: 3
По умолчанию

DeKot, cпасибо, конечно) Но это я уже сама как-нибудь соображу)
Blondинка вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
keypress datagrid tigrend Общие вопросы .NET 0 11.05.2010 08:27
Программирование событий KeyPress, KeyDown,KeyUp. TwEEkcs Общие вопросы Delphi 1 09.09.2009 17:00