Eme funciona en mi delphi 7.Ponle algunos edits y pon esto en una unidad nueva.
Pon almenos 2 edits, porque pongo un numero en edit2.caption, sino pues cambialo.
No acepta showmessage dentro del procedure ,me da error por todas partes.Supongo porque cambia el foco infinitas veces al aparecer un showmessage cambia el foco y llama otra vez al evento y asi y hace un bucle infinito.
Código:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
procedure ActiveControlChanged(Sender: TObject);
{ Public declarations }
end;
var
Form1: TForm1;
i:integer;
implementation
{$R *.dfm}
procedure TForm1.ActiveControlChanged(Sender: TObject);
begin
i := i+1;
edit2.Text := inttostr(i);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Screen.OnActiveControlChange := ActiveControlChanged;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
Screen.OnActiveControlChange := nil;
end;
end.
Saludos