如果是数据库的问题,则这样
在form1的Uses下加入:Db, DBTables
在form1添加table1、button1,在button1的onclick事件:
if table1.state in dsEditModes then
begin
messagedlg('是否要保存记录');
end;
你试一试修改记录一下,看会不会弹出对话框。
我是说的在程序退出的时候才提示是否保存文件,用onchange时只要一修改文件,就提示了。
我调用Modified属性,但是在退出时如果Tmemo被修改,并不打开提示窗口,而是退出程序,源代码如下:
procedure TForm1.Exit1Click(Sender: TObject);
begin
if TMemo1.Modified then
begin
Form2.Show;
end;
Close;
end;
本人刚开始学习delphi,不知道上面的程序在什么地方有问题。
你有两处错误:
procedure TForm1.Exit1Click(Sender: TObject);
begin
if TMemo1.Modified then
//不应该是Tmemo1.modified,而是memo1.modified
begin
//不应该是form2.show,而是form2.showmodal
Form2.Show;
end;
Close;
end;
说明:
showmodal是模态窗口,不关闭此窗口不能聚焦其它窗口.
show 是非模态窗口,当此窗口显示时,可以聚焦其它窗口.