我需要使用像这样的groovy swingbuilder变种
date.text 此变量从swing中的框中获取文本
但我需要从字符串" date; name"
调用此变量例如" date; name" .split(";")[0]
并使用它来获取文本,但这是字符串不变量我需要转换为变量请帮助我
这是我的代码
import groovy.swing.SwingBuilder
import groovy.beans.Bindable
import static javax.swing.JFrame.EXIT_ON_CLOSE
import java.awt.*
def swingBuilder = new SwingBuilder()
swingBuilder.edt {
frame(title: 'Address', size: [350, 230],
show: true, locationRelativeTo: null,
defaultCloseOperation: EXIT_ON_CLOSE) {
borderLayout(vgap: 5)
panel(constraints: BorderLayout.CENTER,
border: compoundBorder([emptyBorder(10), titledBorder('Enter your address:')])) {
tableLayout {
tr{
td { textField id:"date",text="01-01-18", columns: 10 }
}
}
}
}
}
请帮帮我
更新
import groovy.swing.SwingBuilder
import groovy.beans.Bindable
import static javax.swing.JFrame.EXIT_ON_CLOSE
import java.awt.*
def swingBuilder = new SwingBuilder()
swingBuilder.edt {
frame(title: 'Address', size: [350, 230],
show: true, locationRelativeTo: null,
defaultCloseOperation: EXIT_ON_CLOSE) {
borderLayout(vgap: 5)
panel(constraints: BorderLayout.CENTER,
border: compoundBorder([emptyBorder(10), titledBorder('Enter your address:')])) {
tableLayout {
tr{
td { textField id:"date",text="01-01-18", columns: 10 }
}
}
}
panel(constraints: BorderLayout.SOUTH) {
button text: 'Save', actionPerformed: {
zg="date.text"
println Eval.me(zg)
}
}
}
}
我使用此代码而无效
答案 0 :(得分:1)
您可以在
中传递委托取代:
println Eval.me(zg)
与
println Eval.x(delegate, "x.$zg")
但我不确定你为什么要这样做