Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Коды клавишь лево, право, в верх, в низ. 
:(
    Опции темы
blablabla
Дата 17.10.2006, 21:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 7.9.2006

Репутация: нет
Всего: нет



Как узнать коды клавишь лево, право, в верх, в низ. В паскале #75, #77, #72, #80 соответственно. Пробовал применить на DELPHI, ничего не выходит. Подскажите пожалуйста.
PM MAIL   Вверх
volvo877
Дата 17.10.2006, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 14
Всего: 116



Вообще-то 
Цитата(Delphi Help)
VK_LEFT   Left Arrow key
VK_UP     Up Arrow key
VK_RIGHT  Right Arrow key
VK_DOWN   Down Arrow key


Как применять собрался?
PM MAIL   Вверх
Zero
Дата 17.10.2006, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

Репутация: 8
Всего: 24



Цитата(volvo877 @  17.10.2006,  22:25 Найти цитируемый пост)
Вообще-то 

Цитата(Delphi Help)
VK_LEFT   Left Arrow key
VK_UP     Up Arrow key
VK_RIGHT  Right Arrow key
VK_DOWN   Down Arrow key


volvo877, не для всех компонентов, тут можно применить кнопки.
PM MAIL ICQ   Вверх
Romikgy
Дата 17.10.2006, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



а как пробовал код в студию


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
blablabla
Дата 17.10.2006, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 7.9.2006

Репутация: нет
Всего: нет



Код

procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
case key of
  #75:begin
        label1.Caption:=IntToStr(Memo1.CaretPos.x);
        label2.Caption:=IntToStr(Memo1.CaretPos.y);
      end; ;
  #77:begin
        label1.Caption:=IntToStr(Memo1.CaretPos.x);
        label2.Caption:=IntToStr(Memo1.CaretPos.y);
      end; ; ;
  #72:begin
        label1.Caption:=IntToStr(Memo1.CaretPos.x);
        label2.Caption:=IntToStr(Memo1.CaretPos.y);
      end; ; ;
  #80:begin
        label1.Caption:=IntToStr(Memo1.CaretPos.x);
        label2.Caption:=IntToStr(Memo1.CaretPos.y);
      end; ; ;
end;

end;

PM MAIL   Вверх
Romikgy
Дата 17.10.2006, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



Цитата(blablabla @  17.10.2006,  21:27 Найти цитируемый пост)
Memo1KeyPress

здесь это не отловишь!
KeyDown
KeyUp
там ловишь от $25 до $28 вроде так


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
blablabla
Дата 17.10.2006, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 7.9.2006

Репутация: нет
Всего: нет



Цитата

  VK_LEFT   Left Arrow key
  VK_UP     Up Arrow key
  VK_RIGHT  Right Arrow key
  VK_DOWN   Down Arrow key


Чёт не выходит..... smile 
PM MAIL   Вверх
Romikgy
Дата 17.10.2006, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



// только в кейдоуне
Код

begin
case key of
   VK_LEFT:begin
        label1.Caption:=IntToStr(Memo1.CaretPos.x);
        label2.Caption:=IntToStr(Memo1.CaretPos.y);
      end; ;
  VK_UP :begin
        label1.Caption:=IntToStr(Memo1.CaretPos.x);
        label2.Caption:=IntToStr(Memo1.CaretPos.y);
      end; ; ;
  VK_RIGHT:begin
        label1.Caption:=IntToStr(Memo1.CaretPos.x);
        label2.Caption:=IntToStr(Memo1.CaretPos.y);
      end; ; ;
  VK_DOWN :begin
        label1.Caption:=IntToStr(Memo1.CaretPos.x);
        label2.Caption:=IntToStr(Memo1.CaretPos.y);
      end; ; ;
end;
end;

 


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
blablabla
Дата 17.10.2006, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 7.9.2006

Репутация: нет
Всего: нет



Romikgy
Спавибо, заработало. smile 
PM MAIL   Вверх
Zero
Дата 17.10.2006, 23:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2169
Регистрация: 23.10.2004
Где: Россия, г. Рязань

Репутация: 8
Всего: 24



blablabla, ты бы сразу сказал, что те надо для поля Memo, тебе б сразу и ответили...
PM MAIL ICQ   Вверх
skyboy
Дата 17.10.2006, 23:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 4
Всего: 260



Цитата(Romikgy @  17.10.2006,  21:35 Найти цитируемый пост)
там ловишь от $25 до $28 вроде так 

нет. символьные коды как во время Паскаля указывались с символом "#", так и указываются.
Дело в том, что обработчик по OnKeyPress в переменной key передает символ типа char: от #0 до #FF, а обработчики OnKeyUP и OnKeyDown в переменной Code(кажется, может - KeyCode - не помню) содержит код(может - скан-код?) клавиши, а константы VK_LEFT и иже с ними(в хелпе надо смотреть раздел Virtual key codes) как раз и относятся к скан-кодам, но не к символьному представлению. Вобщем, смотря какой обработчик - такой и подход. Например, Backspace можно и в OnKeyPress ловить(символьный код, кажется, #8) и в OnKeyDown/OnKeyUp(VK_BACK).
PM MAIL   Вверх
Romikgy
Дата 18.10.2006, 08:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



skyboy, я константы прописал , ну пусть будет так 
#$25 ... #$28
трудно было это добавить ? и если посмотришь числовое представление 
Цитата(skyboy @  17.10.2006,  22:57 Найти цитируемый пост)
VK_LEFT

и т.п. то увидишь , что это и равно числам вышеприведеным  smile 


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
skyboy
Дата 18.10.2006, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 4
Всего: 260



Romikgy.
Да, vk_left == 37. 
Но символ #37 == "%".
Впервые слышу, чтоб скан-коды смешивались с символьным представлением соотвествующих букв.
Я тебя, наверное, не понял. Поясни, пожалуйста, что ты имел в виду.
PM MAIL   Вверх
aktuba
Дата 18.10.2006, 12:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 16
Всего: 38



Правильно, #37 - %, т.к. #37 и #$37 - это разные коды. В первом случае десятичный, а во втором шестнадцатиричный... Поэтому ничего и не получалось. Ты указывал десятичные коды...


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Romikgy
Дата 18.10.2006, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



skyboy
Код

VK_LEFT    25    LEFT ARROW key 
VK_UP    26    UP ARROW key 
VK_RIGHT    27    RIGHT ARROW key 
VK_DOWN    28    DOWN ARROW key 

все цифры 16-ричные, это из мсдн
ты мои посты сверху читал?


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1340 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.