![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
клавиатура [D6, Win95/98, WinXP]
oens © (2004-11-14 11:34:00)Подскажите, как используя таймер отловить нажатие любой клавиши на клавиатуре?
TUser (2004-11-17 14:46:00) [1]Есть еще ActionManager
VMcL (2004-11-17 07:57:00) [2]>> oens © (15.11.04 11:37) [6]
Unit1.pas
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
procedure FormKeyPress(Sender: TObject; var Key: Char);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(Edit1.Text);
end;
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then
ShowMessage('Wow! You pressed ENTER.'#13#10'Text: ' + Edit1.Text);
end;
end.
Unit1.dfm
object Form1: TForm1
Left = 91
Top = 110
Width = 392
Height = 172
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
KeyPreview = True
OldCreateOrder = False
Position = poScreenCenter
OnKeyPress = FormKeyPress
DesignSize = (
384
145)
PixelsPerInch = 96
TextHeight = 13
object Edit1: TEdit
Left = 5
Top = 15
Width = 371
Height = 21
Anchors = [akLeft, akTop, akRight]
TabOrder = 0
end
end
oens (2004-11-15 11:37:00) [3]А подробнее можно? Я самоучка да ещё и начинающий.
VMcL (2004-11-15 07:38:00) [4]>> oens © (15.11.04 00:19) [3]
Таймер не нужен.
У формы:KeyPreview := True;
Получать нажатия клавиш можно в обработчиках: TForm.OnKeyPress, TForm.OnKeyDown, TForm.OnKeyUp.
uny (2004-11-15 07:26:00) [5]у формы событие onkeypres, привязать туда можно - если, то button.click
oens (2004-11-15 00:19:00) [6]Мне нужно сделать клик по кнопке на форме, если будет нажата любая клавиша клавиатуры.
VMcL (2004-11-14 12:01:00) [7]А зачем использовать таймер?
VMcL (2004-11-14 12:01:00) [8]А зачем использовать таймер?