Delphi 7-属性更改未保存用于链接的组件



我在datamodule1中具有myconnection,form1中有myquery。两个组件都是链接的组件。MyConnection的连接属性和Myquery的Active属性都设置为true。一切都保存了。现在,我将My Connection设置为False,MyConnection自动将MyQuery的活动也将其更改为False。Datamodule1由Delphi 7标记为"更改"("文件"选项卡旁边的星形符号(,因此我可以保存它,但是问题是Form1不是。即使我单击"保存"按钮,Form1的更改也无法保存。

结果,当我重新打开Form1时,MyQuery用Active属性设置为True,并且它也会自动将MyConnection的连接回到True。

我想要解决方案。如何通过仅更改MyConnection的属性来保存Form1?Gexperts中的"设置组件属性"工具也会发生此问题。如果我将其设置为更改我的连接和MyQuery。由于这个问题,它仅报告了我的连接的更改,但没有"正式"对Myquery进行更改。

稍微拖动表单,因此位置更改,现在您可以保存。

基本上:更改表单或形式本身上任何VCL组件的任何属性。即使将它们更改为相同的价值,也将有效,您也将获得保存表格的选项。

如果问题是您忘记将连接到false连接,那么有更好的方法。您可以以某种方式将连接组件分组并重新引入连接的属性。

因此,在打开数据amodule(或表单(时,连接属性将为false。

对于ADO连接组件,源看起来像这样:

unit adoconnection1;
interface
uses
  SysUtils, Classes, DB, ADODB;
type
  tadoconnection1 = class(TADOConnection)
  private
  protected
  public
  published
    property Connected stored false;
  end;
procedure Register;
implementation
procedure Register;
begin
  RegisterComponents('GuidoG', [tadoconnection1]);
end;
end.

最新更新