Форум: "Основная";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];
ВнизКоды клавиш Найти похожие ветки
← →
Viktop (2005-01-27 12:56) [0]Подскажите пожалуйста, где можно взять коды клавиш (#13 - Enter, #8 - BackSpace и т.д.). Конкретно интересует Delete, Del и сочетания клавиш (Ctrl+C, Ctrl+V, Ctrl+X)
← →
Smithson (2005-01-27 13:03) [1]Сочетания клавиш кодов не имеют.
Раз уж ты программируешь в Windows, то и пользуйся его услугами.
При нажатии на клавишу Windows присылает тебе сообщение, из которого видно - что нажали, какие служебные клавиши были нажаты в этот же момент.
← →
TUser © (2005-01-27 13:04) [2]vk_delete типа Word. Обрабатывается не в OnKeyPress, а в OnKeyDown/Up. На сочетания клавишь поставь Action (см. TActionManager).
← →
ssk © (2005-01-27 13:10) [3]>сочетания клавиш (Ctrl+C, Ctrl+V, Ctrl+X)
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (ssCtrl in Shift) and (Key = Ord("C")) then
Form1.Caption := "CTRL+C"
end;
← →
palva © (2005-01-27 15:49) [4]Ctrl-A имеет код 1, Ctrl-B имеет код 2 и т. д. Правда некоторые коды могут перехватываться операционной системой и интерпретироваться по-своему.
{$APPTYPE CONSOLE}
uses Windows, Dialogs;
var
s: String;
i: Integer;
begin
s := "123";
readln(s); // Если введем здеь Ctrl-A Ctrl-B Ctrl-X Enter
for i:=1 to 3 do writeln(Ord(s[i]));
// то программа выдаст 1 2 24
end.
А если ввести Ctrl-C, то это вызовет завершение программы.
← →
palva © (2005-01-27 15:58) [5]В Windows это тоже работает. Установите следующий обработчик OnKeyPress
procedure TForm1.KeyPress(Sender: TObject; var Key: Char);
begin
ShowMessageFmt("%d", [Ord(Key)]);
end;
и нажимайте всякие Ctrl-C Ctrl-V
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.082 c