读书人

定时读取内容解决方法

发布时间: 2013-11-03 15:39:14 作者: rapoo

定时读取内容
白日依山尽,
黄河入海流。
欲穷千里目,
更上一层楼。

我想安顺序每一秒读取一句,这个怎么实现(最好能给出详细的代码)
[解决办法]
“读取一句”何谓“读取”?
或者说,这四句诗放在什么地方,在文件中,还是在变量中?


我假设这四句诗是保存在一个叫 c:\1.txt 的文件中。
你在c盘根目录下创建一个1.txt文件,把这四句诗保存到里面。

先拖一个button控件和一个timer控件到窗体上,
button 控件起名btn1,timer控件起名tmr1
timer的属性面板中,把 inteval属性设置为1000毫秒(即1秒),
把它的enabled属性设为false



// 定义一个TStringList 和 integer 全局变量
var
sli:TStringList; // 用来保存诗句字符串
count:integer; // 用来计数


// 在窗体的Create事件中初始化 sli、count
procedure TForm1.FormCreate(Sender: TObject);
begin
count:=0;
sli:=TStringList.Create;
end;

// 双击button进入Click事件代码中
procedure TForm1.btn1Click(Sender: TObject);
begin
// 在这里先从文件中读取这四句诗到 sli 中
sli.LoadFromFile('c:\1.txt');
// 启动计时器
tmr1.Enabled:= true;
end;

// 在窗体的Destroy事件中销毁 sli
procedure TForm1.FormDestroy(Sender: TObject);
begin
sli.free;
end;

// 双击timer控件进入它的Timer事件代码中
procedure TForm1.tmr1Timer(Sender: TObject);
begin
if i = sli.count-1 then // 如果已经读到了最后一句
tmr1.Enabled:= false; // 则停止计时器

Caption:= sli[i]; // 把该句显示到窗体标题栏
Inc(i); // 计数+1
end;

读书人网 >.NET

热点推荐