select returns 的元素顺序是否有任何保证?
Are there any guarantees about the order of elements that select returns?
我有九个文本框嵌套在垂直面板内,我想从中获取文本并使用。为方便起见,我只是使用 select
通过 class 获取它们,然后将它们应用于记录的构造函数。基本上是这样的:
(ns example.core
(:require [seesaw.core :as sc]))
(apply ->RecordConstructor
(sc/select root [:.textbox]))
这 似乎 可以按我的预期工作,但我无法找到任何关于定义 select
returns 顺序的官方信息它的元素在.
这似乎是基于元素被赋予其父元素的顺序。这是正确的吗?
我不是专家,但看起来 seesaw 只是对其文档模型进行深度优先树遍历。所以没有什么可以保证的,但可以肯定的是,听起来你会按照这个顺序得到东西:深度优先,最左边优先。这里 "left" 是 seesaw 存储它的东西的顺序,不一定是显示顺序。同样,我不知道那是什么顺序,但你对 "the order you added stuff to the model" 的猜测对我来说似乎和任何猜测一样好。
我有九个文本框嵌套在垂直面板内,我想从中获取文本并使用。为方便起见,我只是使用 select
通过 class 获取它们,然后将它们应用于记录的构造函数。基本上是这样的:
(ns example.core
(:require [seesaw.core :as sc]))
(apply ->RecordConstructor
(sc/select root [:.textbox]))
这 似乎 可以按我的预期工作,但我无法找到任何关于定义 select
returns 顺序的官方信息它的元素在.
这似乎是基于元素被赋予其父元素的顺序。这是正确的吗?
我不是专家,但看起来 seesaw 只是对其文档模型进行深度优先树遍历。所以没有什么可以保证的,但可以肯定的是,听起来你会按照这个顺序得到东西:深度优先,最左边优先。这里 "left" 是 seesaw 存储它的东西的顺序,不一定是显示顺序。同样,我不知道那是什么顺序,但你对 "the order you added stuff to the model" 的猜测对我来说似乎和任何猜测一样好。