Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > SHIFT+'KEY_WARD', как перехватить?


Автор: PSYx 17.11.2005, 10:21
Привет.
Возникла идея, а как реализовать не знаю: Многие в своих прогах используют так сказать "Супервизорский" вход известный только разробот4ику, так вот, я хотел 4тобы во время заставки(или непосредственно после вывода окна аутентификации) можно было зажать тот же SHIFT или Alt да хоть тот же Ctrl и держа зажатым набрать клю4евое слово. Но как это реализовать?...
1 идея возникла, но на столько громоздкая, 4то я её сразу же откинул, помогите кто знает как!

Автор: Alexeis 17.11.2005, 10:56
Попробуй обрабочик TForm OnKeyDown

Код

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin

end;

Автор: Guest 17.11.2005, 13:08
При4ём тут.. просто KeyDown тут не катит, нужно у4итывать 4то Shift долженн оставаться нажатым при наборе клю4евой фразы.

Хотите приколоться?: Как узнать коли4ество строк в текстовом файле(самый простой метод). Ни4его проще 4ем пос4итать кол-во симв-ов конца строки я не придумал...

Автор: PSYx 17.11.2005, 13:12
O-o-ops, I forgot 2 registrate smile хм

Автор: Alexeis 17.11.2005, 13:24
Цитата

нужно у4итывать 4то Shift  долженн оставаться нажатым при наборе клю4евой фразы.


Если посмотреть внимательно то в обработчик передается
Shift: TShiftState который и определяет удерживаемые кнопки
Shift, Alt, Ctrl, а Key содержит код нажатой кнопки.



Автор: PSYx 17.11.2005, 13:31
А, понял, спасибо, а 4то на с4ёт строк в файле? По лу4ше метода не знаешь?

Автор: Alexeis 17.11.2005, 13:38
Цитата
4то на с4ёт строк в файле

Другого способа быть не может поскольку длины отдельных строк
в файле заранее не известны smile

Автор: PSYx 17.11.2005, 13:45
Пе4ально! Неудобно это.
Кстати можно просто 4ерез While(not EOF(f1)) readln();'ми простыми создать с4ёт4ик и подс4итать, 4то тоже элегантностью не блещит!
Спасибо за благие намеренья!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)