使用Visualworks(Cincom Smalltalk)和List小部件,如何使用SortedCollection和SelectionInList?例如,如何使用SortedCollection初始化SelectionInList?
我对这个过程感到困惑,但我找不到任何关于如何继续的好文档。
答案 0 :(得分:1)
就像那样:
aSelectionInList list:aSortedCollection。
列表中的选择是管理选择和列表的对象,它实际上并不关心您作为列表传递的集合类型,只要它是可排序的(即响应#at: )
答案 1 :(得分:0)
你真的想在SelectionInList对象中一直使用List。原因是List在实例变量中管理其依赖项。其他类型的集合使用系统范围的Dependencies集合来管理它们的依赖项。这意味着如果您的窗口意外关闭,您可能会在Dependencies集合中留下垃圾,它仍然保留在整个Window结构中并防止它被垃圾收集。因为这个原因,我看到图像变得很大。
如果使用List,则始终可以使用sort或sort:方法对其进行排序。如果您需要将元素添加到列表中,您可以在最后添加它们并重新排序。