2

在拉撒路,我正在尝试这个:

TabSaveButton := TButton.Create(nil);
with TabSaveButton do
  begin
    Parent:=NewTab;
    Width:=75;
    Height:= 25;
    Top:=530;
    Left:=715;
    Caption:='Save';
  end;

它有效。即,我得到了按钮,它是可点击的,它是动态创建的选项卡表的子项。

但以下没有显示按钮,也没有错误:

TabSaveButton := TButton.Create(NewTab);
with TabSaveButton do
  begin
    Width:=75;
    Height:= 25;
    Top:=530;
    Left:=715;
    Caption:='Save';
  end;
  1. 为什么第二种方法不起作用?

  2. 这对 Lazarus 和 Delphi 有同样的影响吗?

4

1 回答 1

4

的参数Create设置控件的所有者。所有者是负责释放相关组件的组件。例如,如果你释放了一个组件,那么它拥有的所有组件也会被释放。父母是完全不同的东西。它是托管相关控件的窗口(控件)。

Delphi和Lazarus在这里没有区别。

于 2012-12-12T16:13:01.680 回答