Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.15;
Скачать: CL | DM;

Вниз

Any key в Delphi...   Найти похожие ветки 

 
Voldemar ©   (2002-06-27 21:20) [0]

Доброе время суток!
Подскажите, как в консольной проге сделать такую штуку...
В турбе я спокойно писАл
while not KeyPressed do
delay(0.01)

a в Делфах ни того, ни другого нет... Как?


 
nimble ©   (2002-06-28 03:04) [1]

Помещаешь на форму компонент TApplicationEvents. У него по событию OnMessage пишешь:
if Msg.message=wm_keydown then ShowMessage("Код нажатой ... - "+IntToStr(Msg.wParam));


 
nimble ©   (2002-06-28 03:06) [2]

Sory, про консоль не заметил!


 
REaliSt ©   (2002-06-28 16:46) [3]

В консоли такая фишка не прокатывает.
Лучше в турбе и пиши.


 
REaliSt ©   (2002-06-28 16:47) [4]

Или лучше в нормальной форме с использованием ApplicationEvents


 
Voldemar ©   (2002-06-29 01:24) [5]

>REaliSt © (28.06.02 16:46)
В турбе крайне криво реализован TStringList, да и не уверен я, что вообще реализован. У меня была мысль сделать все там, но я отказался от нее - APIшные функции нужны...

Неужели же нет способа?


 
Anatoly Podgoretsky ©   (2002-06-29 10:59) [6]

В Windows очень большое количество функция, для поддержки консольных приложений, больше 40 и было бы смешно думать что там нет ничего тебе нужного, тебе подойдет эта GetNumberOfConsoleInputEvents, учти ято консоль в Windows это не дос, к события ввода относятся не только ввод с клавиатуры, но и мышь и изменение размеров окна.


 
VDen ©   (2002-06-29 11:08) [7]

Способ есть - вот вам функция KeyPressed на API.

function KeyPressed: Boolean;
Var irInBuf : TInputRecord;
W : DWord;
begin
KeyPressed := False;
if PeekConsoleInput(RHandle,irInBuf,1,W) then
if ( (irInBuf.EventType = Key_Event) and
(irInBuf.Event.KeyEvent.bKeyDown = true))
then
KeyPressed := true;
end;



Страницы: 1 вся ветка

Текущий архив: 2002.07.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.015 c
1-47484
klochkov
2002-07-03 16:49
2002.07.15
Строчки


3-47118
MikeFW
2002-06-21 10:31
2002.07.15
Проблемы со скоростью обработки TQuery записей из базы данных


1-47274
Tahion
2002-06-25 10:14
2002.07.15
3. Как сделать НЕВЫДЕЛЕННЫМИ все элементы CheckListBox-а?


1-47312
Raiv
2002-07-01 09:47
2002.07.15
Как включить dll файл в свой exe


6-47660
kool
2002-05-08 03:05
2002.07.15
как обойти сервер в локальной сети?