1

假设我使用 SwingBuilder 声明一个对象,如下所示:

swing.button(id:'something')

我知道我可以Component通过调用 SwingBuilder 获得支持:

swing."something"

但是我怎样才能从 , 的实例Component返回id的字符串呢?

Component c = getMyButton()
String whatIWant = c.id    //Property doesn't exist
String attempt2  = c['id'] //Property doesn't exist
4

1 回答 1

1

我相信你正在寻找的是名字,所以Component#getName()应该做你想做的事。

例如:

Component c = getMyButton()
String whatIWant = c.getName() // or c.name

不幸的是,这没有记录在案,但它似乎是 Groovy SwingBuilder 源代码所做的,尽管可能只有在没有显式.id属性的情况下(一个不存在于Component..?)

于 2017-05-27T01:31:48.593 回答