我用Delphi7 写个记事本,点击打开或者保存这个都正常,但一点取消就出“cannot open file "".报错的提示
procedureTForm1.N3Click(Sender:TObject);beginform1.OpenDialog1.execute;form1.Memo1.Li...
procedure TForm1.N3Click(Sender: TObject);
begin
form1.OpenDialog1.execute;
form1.Memo1.Lines.LoadFromFile(form1.OpenDialog1.filename); //打开
end;
procedure TForm1.N4Click(Sender: TObject);
begin
form1.saveDialog1.execute;
form1.Memo1.Lines.savetoFile(form1.saveDialog1.filename);//保存
end;
本人菜鸟,刚开始了解这个delphi,为什么就报错了呢?要修改的话应该怎么修改,对了本人属于菜鸟级的,刚不如delphi。 展开
begin
form1.OpenDialog1.execute;
form1.Memo1.Lines.LoadFromFile(form1.OpenDialog1.filename); //打开
end;
procedure TForm1.N4Click(Sender: TObject);
begin
form1.saveDialog1.execute;
form1.Memo1.Lines.savetoFile(form1.saveDialog1.filename);//保存
end;
本人菜鸟,刚开始了解这个delphi,为什么就报错了呢?要修改的话应该怎么修改,对了本人属于菜鸟级的,刚不如delphi。 展开
1个回答
展开全部
你这样的代码肯定点取消出问题,因为点取消的话,opendialog1.filename跟savedialog1.filename都为空值。
代码改成
procedure TForm1.N3Click(Sender: TObject);
begin
if(form1.OpenDialog1.executed)then
form1.Memo1.Lines.LoadFromFile(form1.OpenDialog1.filename); //打开
end;
procedure TForm1.N4Click(Sender: TObject);
begin
if(form1.saveDialog1.executed)then
form1.Memo1.Lines.savetoFile(form1.saveDialog1.filename);//保存
end;
因为现在的电脑没装Delphi,所以代码没经测试,只是凭记忆改的。
opendialog跟savedialog有一个属性是布尔值 的,记忆中是这个executed,表示对话框 是否成功执行,点取消时返回false,后面的代码就不执行了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询