读书人

delphi子窗体载入本地文本的有关问题

发布时间: 2012-06-16 20:34:32 作者: rapoo

delphi子窗体载入本地文本的问题
我设置的form1为主窗体

form2为主窗体


form1登录成功后显示form2
th2:=tform2.Create(self);
th2.Show;

但是我在form2中 create 或者 show事件中 写 form2.Memo1.Lines.LoadFromFile('type.txt');
载入本地一个文本文件 却怎么也载入不了

在程序 Project-Options 中设置的 Auto-create forms 是 form1 和 form2 form1为主窗体


如果把 form2 设置成 Available forms 的情况下 form2.Memo1.Lines.LoadFromFile('type.txt'); 就直接报错

求解答


[解决办法]
form2.Memo1.Lines.LoadFromFile(ExtractFilePath(ParamStr(0))+'type.txt');
[解决办法]
应该是你的路径不对,用绝对路径就可以的,计算出绝对路径,还要在将子窗体设置为手动创建,要不就不要第一句创建窗体代码。
form2:=tform2.Create(self);
form2.Memo1.Lines.LoadFromFile('D:\type.txt');
form2.Show;

获取资源文件绝对路径
function getFilePath(sFileName: string): string; //计算资源文件的绝对路径
var sLoad: string;
begin
sLoad := extractfilepath(Application.Exename);
sLoad := sLoad + sFileName;
Result := sLoad;
end;

form2:=tform2.Create(self);
form2.Memo1.Lines.LoadFromFile(getFilePath('type.txt'));
form2.Show;

读书人网 >.NET

热点推荐