Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

клавиатура [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]

А зачем использовать таймер?


Наверх

Титульная страница Поиск, карта сайта Написать письмо