28

_createウィジェット定義のとの違いは理解していると思います_init(たとえば、この質問を参照してください) が、区別の目的についてはまだ確信が持てません。_create()または には、どのような種類のセットアップ タスクがあります_init()か? ウィジェットの作成者が間違ったものを選択した場合、何が問題になるのでしょうか?

4

2 に答える 2

36

から:

_createマークアップの作成と挿入、イベントのバインドなどに使用します。既定の機能を に配置します_init()。たとえば、ダイアログ ウィジェットautoOpenは、ウィジェットの初期化後にダイアログを開くかどうかを示すパラメーターを提供します。の絶好のスポット _init()

また:

ウィジェット ファクトリは、初期化中に メソッド_create()とメソッドをこの順序で自動的に起動します。_init()一見、努力が重複しているように見えますが、両者には見た目の違いがあります。ウィジェット ファクトリは同じ要素での複数のインスタンス化から保護するため、 _create()ウィジェット インスタンスごとに最大 1 回_init()呼び出されますが、ウィジェットが引数なしで呼び出されるたびに呼び出されます...

作成者が_init()いつコード化する必要があるかを使用すると、ウィジェットのインスタンス化ごとに_create()コードが 1 回実行されるという結果になります。_init()

于 2011-01-03T15:54:17.700 に答える