Показать сообщение отдельно
  #13  
Старый 12.02.2017, 17:19
SKIPtr SKIPtr вне форума
Начинающий
 
Регистрация: 15.03.2015
Сообщения: 108
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

вот у меня примерно так выглядет

Код:
type
  TWaitThread = class(TThread)
    ecze: string;
    provera : string;
    ary : integer;
    HTimer: THandle;
    procedure Execute; override;
    procedure TimerFired(Sender: TObject);
  end;

  TForm1 = class(TForm)
     Button1: TButton;
     Button2: TButton;
  private
    { Private declarations }
  public
    { Public declarations }
     Zad : TWaitThread;
  end;


procedure TForm1.Button1Click(Sender: TObject);
begin
    Zad := TWaitThread.Create(TRUE);
    with Zad do
     begin
        ecze := fail.Text;
        OnTerminate := TimerFired; 
        FreeOnTerminate := TRUE; 
        Resume;
     end;
end;


procedure TForm1.Button2Click(Sender: TObject);
begin
  n := Zad.HTimer;
  SetEvent(n);  
end;

procedure TWaitThread.Execute;
 begin
    HTimer := CreateEvent(nil,true,false,nil);
   try
     for n := 0 to 5 do
      begin
        WaitForSingleObject(HTimer, INFINITE); 
        WinExec(PChar(ecze), SW_ShowNormal);
      end
   finally
     CloseHandle(HTimer);
   end;
 end;
end;

так команда WinExec(PChar(ecze), SW_ShowNormal);
сразу 5 раз запускаеться
а мне нужно шоб запускала после каждого нажатия на кнопку
Ответить с цитированием