首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

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

2012-06-16 
delphi子窗体载入本地文本的问题我设置的form1为主窗体form2为主窗体form1登录成功后显示form2th2:tform2

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;

热点排行