
01.06.2011, 19:56
|
 |
Let Me Show You
|
|
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
|
|
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
PMethodLavrovoi = ^MethodLavrovoi;
MethodLavrovoi = record
h: THandle;
i: Integer;
s: String;
d: TDateTime;
end;
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure WMUSER(var Msg: TMessage); message WM_USER+$1001;
end;
var
Form1: TForm1;
FHandle: THandle;
FThreadID: THandle;
r: MethodLavrovoi;
implementation
{$R *.dfm}
function ThreadProc(Parameter: PMethodLavrovoi): Integer;
var
i: Integer;
begin
Parameter^.s:='MethodLavrovoi';
Parameter^.d:=Parameter^.d-1;
for i:=1 to Parameter^.i do
begin
Windows.Beep(1000, 100);
Sleep(500);
end;
PostMessage(Parameter^.h, WM_USER+$1001, 0, 0);
Result:=0;
EndThread(Result);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
r.h:=Handle;
r.i:=3;
r.s:='';
r.d:=Now;
FHandle:=BeginThread(nil, 0, @ThreadProc, @r, 0, FThreadID);
end;
procedure TForm1.WMUSER(var Msg: TMessage);
begin
ShowMessage(r.s+' '+DateToStr(r.d));
end;
end.
__________________
Пишу программы за еду.
__________________
|