Показать сообщение отдельно
  #2  
Старый 22.03.2013, 18:31
Gareth Gareth вне форума
Активный
 
Регистрация: 21.03.2013
Адрес: Приднестровье
Сообщения: 202
Версия Delphi: Delphi 7
Репутация: 10
Радость

В общем у меня есть программа, по нажатию например на А, нажимается пробел. То-есть имитируется нажатие пробела (вроде правильно написал )
Но она работает только когда окно программы активно. А мне надо, что бы она могла работать даже в свернутом виде. Можно это реализовать ?

Вот полный код программы
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    tmr1: TTimer;
    Button1: TButton;
    Button2: TButton;
    mmo1: TMemo;
    procedure tmr1Timer(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.tmr1Timer(Sender: TObject);
begin
  tmr1.Enabled:=False;
keybd_event(VK_SPACE,0,0,0);
keybd_event(VK_SPACE,0,KEYEVENTF_KEYUP,0);
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
tmr1.Enabled:=True;
mmo1.Lines.Add('on');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
tmr1.Enabled:=False;
mmo1.Lines.Add('off');
end;

procedure TForm1.Button1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if Key = 65 then
Form1.Button1.Click;
end;

procedure TForm1.Button1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if Key = 65 then
Form1.Button2.Click;
end;

end.
Мемо кинул для проверки работоспособности программы.
Если держать программу поверх браузера, и включить таймер (который повторяет нажатие пробела) и резко нажать на браузер, то можно заметить как страница браузера прокручивается! Это говорит о том, что программа действительно работает. )))))

Помогите ребята.
Ответить с цитированием