--}}
Новая тема
Вы не можете создавать новые темы.
Т.к. вы неавторизованы на сайте. Пожалуйста назовите себя или зарегистрируйтесь.
Список тем

Господа программисты, ОТЗОВИТЕСЬ!

4
10
С друзьями на NN.RU
В социальных сетях
Поделиться
Shor
22.10.2004
Короче, тема:
Я тут игру, ма-а-аненьку таку,
написал на Делфи.(прилагается).
Хто-нибудь знает, как сделать
что-то вроде ReadKey'я (ну, типа как в обычном Паскале)???
Не знаю просто, как ето в Делфи
делается.
Люди добрые!Помогите кто чем могёт!Ну там советом типа каким-нибудь.А если и бабла подкинете -
буду очень признателен! (шучу)
P.S.-Я еще и песенку написал... ¶
DenKl
22.10.2004
Спроси тут мож ответят :)
<a href="http://www.shedon.com.ru/index.php?name=PNphpBB2&file=index" target="_blank">http://www.shedon.com.ru/index.php?name=PNphpBB2&file=index</a>
voronin
22.10.2004
onKeyPressed (это если по памяти)
diamant
23.10.2004
в Delphi это делается - как в Windows, а в Windows - как в http://msdn.microsoft.com написано. Это в принципе. А в Delphi справки нету?{недоверчиво}
Shor
23.10.2004
Даже такой ламер, как я, знает, что OnKeyPressed - это на нажатие
ЛЮБОЙ клавиши.
А мне надо конкретно определенную
клавишу (точнее - ее код).
Думаю, может Timer поставить и через каждые 10мс считывть код нажатой клавиши... А вот какой
процедурой(функцией)? Не е..у.
А ты взгляника на параметры этой функции, помойму там можно отследить что за клавиша нажата.
voronin
23.10.2004
вот не поленился

Occurs when key pressed.

type TKeyPressEvent = procedure (Sender: TObject; var Key: Char) of object;
property OnKeyPress: TKeyPressEvent;

Description

Use the OnKeyPress event handler to make something happen as a result of a single character key press.

The Key parameter in the OnKeyPress event handler is of type Char; therefore, the OnKeyPress event registers the ASCII character of the key pressed. Keys that don't correspond to an ASCII Char value (Shift or F1, for example) don't generate an OnKeyPress event. Key combinations (such as Shift+A), generate only one OnKeyPress event (for this example, Shift+A results in a Key value of “A” if Caps Lock is off). To respond to non-ASCII keys or key combinations, use the OnKeyDown or OnKeyUp event handlers.



This event handler displays a message dialog box specifying which key was pressed:

procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);

begin
MessageDlg(Key + ' has been pressed', mtInformation, [mbOK], 0)

end;

что, самому это трудно сделать? :/
Сходите на http://www.rusfaq.ru/ и задайте вопрос.
также попробуйте на "_assembler" в сообществе ЖЖ.

а вообще-то можно ловушки применить. если хотите,вышлю библиотечку мою (DLL).
а там её подключите к своей программе и работайте :)
jushi
25.10.2004
Есть события OnKeyDown, OnKeyUp, можно прямо сообщения Windows ловить WM_KEYDOWN... Но тут маненькое ограничение есть - одновеременное нажатие нескольких клавиш не отловишь... Если нужно именно состояние читать - копай DirectX, а конкретно - Direct Input... В MSDN все написано, ну и по поиску поищи заголовки объявления DX интерфейсов для Delphi.

А всякие там ловушки и ассемблер - это имхо не правильно потому что нестандартно.
billi bon
28.10.2004
Проще всего (и правильнее всего) ИМХО обрабатывать событие KeyUp, для этого повесь на форму какой нить элемент который имеет это событие.
Делается так - в обработчик автоматически передается код нажатой клавиши - Key типа WORD. Он не зависит от раскладки клавиатуры.
Или можешь обрабатывать событие KeyPressed - в него передается непосредственно введенный символ, но, не обрабатываются нажатия CTRL SHIFT и ALT. Из этого симола можешь получить его код функцией Ord(), кстати, обратное преобразование (из кода в символ) - функция Chr().
Удачи!
Новая тема
Вы не можете создавать новые темы.
Т.к. вы неавторизованы на сайте. Пожалуйста назовите себя или зарегистрируйтесь.
Список тем
Последние темы форумов
Принтер лазерный HEWLETT PACKARD HP-6L

Принтер лазерный HEWLETT PACKARD HP-6L Отправка в регионы после оплаты. 3штуки БУ. Внешний вид из магазина простояли на складе...
Цена: 4 500 руб.

Сетевой фильтр APC Surge Arrest

Сетевой фильтр APC Surge Arrest для радиолюбителя.и не только Отправка в регионы после оплаты. ЦЕНА 3000 руб. В рабочем состоянии....
Цена: 3 000 руб.

Материнские платы на запчасти и не только

Материнские платы на запчасти и не только Материнские платы и другие комплектующие Отправка в регионы после оплаты. Транспортной...
Цена: 3 000 руб.

Оперативная память Corsair XMS3 CMX8GX3M2A1600C9

Оперативная память Corsair XMS3 CMX8GX3M2A1600C9 Отправка в регионы после оплаты. Продаются сразу обе. Цена за обе 2000 руб....
Цена: 1 000 руб.