| Groovy高效编程——@Bindable的使用 |
|
| 作者是 山风小子 | |
| 2008-05-04 07:01:29 | |
|
点击‘update’按钮,随机更新label的值。请注意,我们仅仅设置了myBean的属性prop的值,未对label进行任何的显式操作(比如setText) import?groovy.beans.Bindable import?groovy.swing.* import?javax.swing.* import?java.awt.* class?MyBean?{ ????@Bindable? ????String?prop } def?rand?=?new?Random() def?greetings?=?['hello,?world',?'hello,?Groovy',?'hello,?山风小子'] def?myBean?=?new?MyBean(prop:greetings[2]) def?swing?=?new?SwingBuilder() def?frame?=?swing.frame(title:'Bindable?Demo',?location:?[100,?100],?size:[300,?100])?{ ????panel(layout:?new?GridLayout(1,?2))?{ ????????label(text:bind(source:myBean,?sourceProperty:'prop')) ????????button(action(name:'update',?closure:?{myBean.prop?=?greetings[rand.nextInt(3)]})) ????} } frame.setVisible(true) 附:朝花夕拾——Groovy & Grails |
|
| 最近更新 ( 2008-05-04 07:01:29 ) |

