Код:
unit UReal;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, MMSystem;
type
TForm1 = class(TForm)
Memo1: TMemo;
Timer1: TTimer;
Button1: TButton;
Label1: TLabel;
Button2: TButton;
Button3: TButton;
Timer2: TTimer;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Timer2Timer(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
procedure Pechataem(slovo:string);
procedure Stiraem(sim:integer);
{ Public declarations }
end;
var
Form1: TForm1;
n,i,num: integer;
s,str: string;
slovo: string;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
n:=0;
slovo:='кусок текста';
Timer1.Enabled:=true;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
i:=0;
num:=5;
Timer2.Enabled:=True;
end;
procedure TForm1.Pechataem(slovo: string);
begin
Inc(n);
if n<=length(slovo) then
begin
Memo1.Text:=Memo1.Text+slovo[n];
Timer1.Interval:=100 + Random(100);
end
else
Timer1.Enabled:=false;
end;
procedure TForm1.Stiraem(sim: integer);
begin
if i<=sim then
begin
str:=Memo1.Text;
Delete(str,length(str),i);
Timer2.Interval:=100 + Random(50);
Memo1.Text:=str;
Inc(i);
end
else
Timer2.Enabled:=false;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Pechataem(slovo);
end;
procedure TForm1.Timer2Timer(Sender: TObject);
begin
Stiraem(num);
end;
end.
тут вызов только по кнопкам. как сделать так, чтобы ввести последовательное количество фрагментов текста и количества стираемых символов, в массив, например, и программа последовательно печатала фрагменты и удаляла символы?
может непонятен смысл всего этого... имитация набора текста с ошибками. допускается ошибка, стираются символы, ввод текста продолжается.
подскажите хотя бы в каком направлении думать