怎样动态存储DBGrid的属性,使下次打开的时候能开到保存的值
我把用TMemoryStream 动态存储DBGrid的功能封装在TNewDBGrid 中,怎么有时候会出现 Class TDBGridInplaceEdit not found 呢,有时候有可以成功运行呢 ,你可以帮我看下吗
procedure TNewDBGrid.KeyPress(var Key: Char);
var
mss:TMemoryStream;
begin
inherited;
if key=#19 then //Ctrl+S 保存属性
begin
if Assigned(mss) then
begin
mss:=TMemoryStream.Create;
mss.WriteComponent(self);
mss.SaveToFile(path);
FreeAndNil(mss);
end
end;
end;
procedure TNewDBGrid.WMCreate(var Message: TWMCreate);
var
mss:TMemoryStream;
begin
inherited;
if self.Parent<>nil then
begin
path:=self.Parent.Name+self.Name+'.cks';
mss:= TMemoryStream.Create();
if fileexists(path) then
begin
mss.LoadFromFile(path);
try
mss.ReadComponent(self);
finally
mss.Free;
mss:=nil;
end;
end;
end;
end;
我把用TMemoryStream 动态存储DBGrid的功能封装在TNewDBGrid 中,怎么有时候会出现 Class TDBGridInplaceEdit not found 呢,有时候有可以成功运行呢 ,你可以帮我看下吗
procedure TNewDBGrid.KeyPress(var Key: Char);
var
mss:TMemoryStream;
begin
inherited;
if key=#19 then //Ctrl+S 保存属性
begin
if Assigned(mss) then
begin
mss:=TMemoryStream.Create;
mss.WriteComponent(self);
mss.SaveToFile(path);
FreeAndNil(mss);
end
end;
end;
procedure TNewDBGrid.WMCreate(var Message: TWMCreate);
var
mss:TMemoryStream;
begin
inherited;
if self.Parent<>nil then
begin
path:=self.Parent.Name+self.Name+'.cks';
mss:= TMemoryStream.Create();
if fileexists(path) then
begin
mss.LoadFromFile(path);
try
mss.ReadComponent(self);
finally
mss.Free;
mss:=nil;
end;
end;
end;
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货