告诉你一个简单的:
定义一个全局变量:var ts:TStringList;
主窗口Create时:
ts:=TStringList.Create;
ts.LoadFromFile(你自己定义一个文件名,什么类型无所谓.用来存放打开过的文件);
打开名为fn的文件时:
i:=ts.indexof(fn);
if i=-1 then ts.insert(0,fn) else ts.move(i,0);//这句的意思是,如果ts里有fn,则将其移至第一行,如果没有,则插入到第一行.
如果你想限定打开数量,比如是5,那么,这时再加上:if ts.count>5 then ts.delete(ts.count-1);//删除最后一个.
程序关闭时,在窗口的destroy事件里写:
ts.savetofile(你自己定义一个文件名);
ts.free.
以上方法写起来最方便简捷.我以前也是用ini文件记录.