在PB可視使用者類中動態建立其它可視物件

2021-06-09 04:50:19 字數 635 閱讀 8318

很多人在建立高階的可視類的時候都會遇到以上情況,但pb卻沒有提供這樣的純浄的實現方法。

下面將本人的實現方式做一描述:

1..window lw_parent --父視窗

2..u_cst_button luo_item --例項命名

3..setredraw(false) --停刷

4..of_getparentwindow() --獲取父視窗(這中間的實現方法就不要問了,到處都是)

5..lw_parent.openuserobject(luo_item) --動態開啟例項(發現沒,這終歸還是使用了視窗級的動態生成物件)

6..setparent(handle(luo_item),handle(this)) --將剛開啟的例項裝入本物件容器(這就是核心了,配合operuserobject就完成了完整動態建立了)

7..setredraw(true) --開刷

實現這個過程其實就是乙個動態建立物件和所在容器轉移的過程,**行5-6就是關鍵所在;

依此思路靈活應用應該可以設計出很強大的高階可視類了,其中6行使用了以下api的申告:

public function long setparent(long lchild, long lparent) library "user32.dll"

在delphi中如何動態建立類的例項

在物件導向語言中,用兩種方法建立類的例項 靜態建立和動態建立。靜態建立就是在程式中顯式地建立類的例項,如c1 tclass1.create 而動態建立是在只知道類名的前題下建立類的例項。動態建立在實現上要比靜態建立更靈活,因為動態建立無需引用被建立類,並且更容易實現如多型等物件導向特性。一 動態建立...

在delphi中如何動態建立類的例項

在物件導向語言中,用兩種方法建立類的例項 靜態建立和動態建立。靜態建立就是在程式中顯式地建立類的例項,如c1 tclass1.create 而動態建立是在只知道類名的前題下建立類的例項。動態建立在實現上要比靜態建立更靈活,因為動態建立無需引用被建立類,並且更容易實現如多型等物件導向特性。一 動態建立...

在PB中如何讓使用者只能修改新增的資料

在設計資料視窗時,在所有列的background.color屬性中編寫如下表示式 ifvoqwfzippw isrownew 1090519039,long describe www.cppcns.com 程式設計客棧datawindow.color 程式設計客棧 這樣可以讓使用者知道這些行的資料為...