Delphi中Owner和Parent的區別

2021-09-13 02:53:53 字數 984 閱讀 4257

owner為建立者,parent為容器 他們的型別不同,owner為tcomponent(元件),parent為twincontrol(窗體控制項)

parent屬性是指構件的包容器,構件只能在此範圍內顯示和移動。舉例子如下:

(1)在form1的窗體上,放乙個panel1,並將panel1拉大,

(2)在panel1上放一button1;

(3)在form1上放一button2。

現在如果移動panel1,則button1隨著panel1移動,這是因為button1的parent是panel1。現在將button2移到 panel1上,再次移動panel1,button2並不跟著移動,這是因為button2的parent是form1。除在窗體設計中,應注意構件的 parent是誰外,在動態建立構件時,也應指出構件的parent,如在上例中繼續操作:

1)procedure tform1.button2click(sender:tobjet);

2)var

3) button:tbutton;

4) begin

5) button:tbutton.cerate(self);

6) button.parent=panel1;

7) button.lleft=0;

8) button.top=0;

9) button.caption:=』ok』;

10) end;

當按button2時,將在panel1上建立乙個button,而如果把第6句改為button.parent:=self;按button2時, 將在form1上建立乙個button了。如果將第6句刪除,按button2時,什麼都不會發生,這是因為建立方法無法知道應在**顯示構件。

parent屬性和owner屬性是執行階段的屬性,只能在執行階段,通過**設定。

owner為建立者,parent為容器 他們的型別不同,

owner為tcomponent(元件),parent為twincontrol(窗體控制項)

c 中 p a和p a的區別

大學初學指標的時候,時常懵逼,有時候覺得自己已經掌握了,但是一看複雜的程式和原始碼裡的指標用法,就又蒙了,以至於談指標色變。至於二級指標,陣列指標 指標陣列 函式指標什麼的更是被嚇懵。現在來逐個擊破他們,為我們的程式設計道路掃清阻礙。首先需要明白一點的是,指標是個變數,它和int型別 float型別...

Extjs中ViewPort動態更換Panel

我們在使用extjs進行開發單頁面應用時,我們構建了乙個viewport有時候可能希望對viewport中的items進行動態替換,網上也有很多的資料但是都只說了個大概並沒有詳細說明,這裡我將對遇到這種需求時如何處理進行詳細介紹。環境extjs 4.2 首先我們來看viewport 選單model ...

delphi中pos和Ansipos函式的區別

pos和ansipos的主要區別在於,pos引數多用於是乙個字元,而ansipos多用於是多個字元 例如 i pos a sssssas i ansipos abc sdabcss ansipos是以ansi字元做為pos單位,例如ansipos 王韡 得到的值是5 pos是以位元組作為pos單位,...