1

Visualworks (Cincom Smalltalk) と List ウィジェットを使用して、SortedCollection を SelectionInList と一緒に使用するにはどうすればよいですか? たとえば、SortedCollection を使用して SelectionInList を初期化するにはどうすればよいでしょうか。

プロセスについて混乱しており、続行方法に関する適切なドキュメントが見つかりません。

4

2 に答える 2

1

そのように:

aSelectionInList リスト: aSortedCollection。

リスト内のセレクションは、セレクションとリストを管理するオブジェクトです。実際には、リストとして渡すコレクションの種類はあまり気にしません。ただし、シーケンス可能である (つまり、#at: に応答する) 限りはそうです。

于 2013-03-14T11:51:45.047 に答える
0

あなたは本当にSelectionInListオブジェクトで常にListを使いたいと思っています。その理由は、Listがその依存関係自体をインスタンス変数で管理するためです。他の種類のコレクションは、システム全体のDependenciesコレクションを使用して依存関係を管理します。つまり、ウィンドウが予期せずシャットダウンした場合、Dependenciesコレクションにガベージが残り、ウィンドウ構造全体が保持され、ガベージコレクションが妨げられる可能性があります。このため、画像が巨大なサイズに成長するのを見てきました。

リストを使用する場合は、sortまたはsort:メソッドを使用して、いつでもその場でリストを並べ替えることができます。リストに要素を追加する必要がある場合は、最後に要素を追加して並べ替えることができます。

于 2013-03-16T10:21:32.883 に答える