功能:用户在Listbox选择间隔秒数(比如2秒)然后按开始(button1)键,从0开始累加计数(隔2秒累加1),显示结果在edit,按停止键(button2),停止累加,要求写出代码。

解决方案 »

  1.   


    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, ExtCtrls, StdCtrls;type
      TForm1 = class(TForm)
        ListBox1: TListBox;
        Button1: TButton;
        Button2: TButton;
        Timer1: TTimer;
        Edit1: TEdit;
        procedure FormShow(Sender: TObject);
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure Timer1Timer(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
        vg_index:Integer;
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormShow(Sender: TObject);
    begin
      vg_index:=0;
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
      self.Timer1.Interval:=2000;
      self.Timer1.Enabled:=True;
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
      self.Timer1.Enabled:=False;
    end;procedure TForm1.Timer1Timer(Sender: TObject);
    var
      i:Integer;
      s:string;
    begin
      s:=self.ListBox1.Items.Strings[self.vg_index];
      self.Edit1.Text:=s;
      i:=self.ListBox1.Items.Count;
      if self.vg_index+1=i then
        self.vg_index:=0
      else
        self.vg_index:=self.vg_index+1;
    end;end.
      

  2.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, ExtCtrls, StdCtrls;type
      TForm1 = class(TForm)
        ListBox1: TListBox;
        Button1: TButton;
        Button2: TButton;
        Timer1: TTimer;
        Edit1: TEdit;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure Timer1Timer(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    begin
      Edit1.Text:='0';
      Timer1.Interval:=strtoint(ListBox1.Items[ListBox1.ItemIndex])*1000;
      Timer1.Enabled:=True;
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
      Timer1.Enabled:=False;
    end;procedure TForm1.Timer1Timer(Sender: TObject);
    begin
      Edit1.Text:=inttostr(strtoint(Edit1.Text)+1);
    end;end.