Переписал свою програмульку на Лазаре.
вот код:
Код:
unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, ExtCtrls; type { TForm1 } TForm1 = class(TForm) Button1: TButton; Button2: TButton; Edit1: TEdit; Edit2: TEdit; Label1: TLabel; Label2: TLabel; ListBox1: TListBox; OpenDialog1: TOpenDialog; Timer1: TTimer; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Timer1Timer(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; i: integer; ddd: integer; implementation {$R *.lfm} { TForm1 } procedure TForm1.FormCreate(Sender: TObject); begin Timer1.Enabled:=False; Timer1.Interval := 40; i := 0; Edit1.Visible := False; Button1.Visible := False; end; procedure TForm1.Button2Click(Sender: TObject); begin ListBox1.Items.Clear; Edit1.Visible := False; ListBox1.Visible := True; if OpenDialog1.Execute then ListBox1.Items.LoadFromFile(OpenDialog1.FileName); Button1.Visible := True; end; procedure TForm1.Button1Click(Sender: TObject); var cnc: integer; scs: string; begin if edit2.Text = '' then ddd := 40 else begin scs:= Edit2.Text; for cnc := 1 to length(scs) do begin if not (scs[cnc] in ['0'..'9']) then begin ddd := 40 ; break; end else ddd := StrToInt(Edit2.Text); end; end; Timer1.Interval := ddd; Label2.Caption := IntToStr(ListBox1.Items.Count) + ' words'; if Button1.Caption = 'start' then begin Edit1.Visible := True; ListBox1.Visible := False; Button2.Visible := False; Timer1.Enabled:=True; Button1.Caption := 'stop'; end else begin Timer1.Enabled:=False; Button1.Caption := 'start'; Edit1.Visible := False; ListBox1.Visible := True; Button2.Visible := True; end; end; procedure TForm1.Timer1Timer(Sender: TObject); begin Edit1.Text := ListBox1.Items[i]; i := i + 1; If i > ListBox1.Items.Count - 1 Then i := 0; end; end.
Скрины не прикладываю, так как внешне она не отличается от прошлой версии написанной на VB.Net.
Программа 25 кадр на VB.NET
Есть только небольшие доработки. например прячет кнопку Старт. пока не загружен словарь.
В качестве словаря может быть любой текст в формате UTF.