0

編集可能なツリー ウィジェットを作成しようとしています。たとえば、cellrenderer と propertyCellRendererFactoryFunc を使用して、テーブルの編集可能な列を作成する方法のサンプルが多数あります。これは非常に素晴らしいものです。残念ながら、VirtualTree/Tree の有用な例は見つかりません。Tree のソースコードを深く編集せずに作成することさえ可能ですか?

4

1 に答える 1

0

VirtualTree の 1 つのアプローチを次に示します。

  • VirtualTree はツリー アイテムに通常のウィジェットを使用するため、これらのアイテムの外観を変更するために、これらのアイテムの作成方法を調整することが考えられます。
  • これはデリゲートによって実現されます。ツリーにカスタム デリゲートを設定するには、tree.setDelegate()を使用します。
  • デリゲート自体は、ネイティブ JS オブジェクト (マップ) にすることができます。IVirtualTreeDelegate インターフェイスに準拠する必要があります。つまり、デリゲート オブジェクトは、事前定義されたセット (「bindItem」、「createItem」など) からいくつかのメソッドを公開します。一般的な例については、このデモのコードを参照してください。
  • あなたの場合、デリゲートにcreateItemメソッドを提供し、その他のサポート メソッド ( bindItem など) を提供する必要があります。それを行うやや複雑な例があります。これは、それ自体のインスタンスをデリゲートとして使用します。

HTH

于 2013-10-07T09:41:33.203 に答える