120 likes | 270 Views
Informatics Engineering – University of Brawijaya. Advanced Java Programming. Swing part-two. Eriq Muhammad Adams J e riq.adams@ub.ac.id. Agenda. Beans Binding Look and Feel Create Installer & Executable Useful Components. Beans Binding. Specification is in JSR 295.
E N D
Informatics Engineering – University of Brawijaya Advanced Java Programming Swing part-two Eriq Muhammad Adams J eriq.adams@ub.ac.id
Agenda • Beans Binding • Look and Feel • Create Installer & Executable • Useful Components
Beans Binding • Specification is in JSR 295. • Is used to synchronized properties between two objects. • Beans binding now fully support matisse GUI Builder (make easier for developer for binding data). • There are binding source and target. • Update strategies: Read/Write, Read-Only, Read-Once • If you want to synchronize properties of two objects but they have different types you have to create Converter. • Use Validator to filter binding’s value from target.
Beans Binding (cont.) • General Data flow Converter Source Target Validator Converter
Beans Binding (cont.) • Extends org.jdesktop.beansbinding.Converter<S,T> to create new Converter. S is source type, and T is target type. • Override convertForward(S value):T to converts a value from the source type to the target type. • Override convertReverse(T value):S to converts a value from the target type to the source type. • Please learn my tutorial at : http://scc-ub.googlecode.com/files/tutorial.photomanager.pdf.zip ,source code available at : http://scc-ub.googlecode.com/files/PhotoManager.zip
Beans Binding (cont.) • To create a new Validator you have to extends org.jdesktop.beansbinding.Validator<T>. T is target type. • Override validate(T value):Validator.Resultto define validation procedure.
Beans Binding (cont.) • Example : • When several items in Jlist is selected, the JComboBox will automatically populated. • If JTextField ‘s value will be changed according to selected item in JComboBox Demo available at http://eriq.lecture.ub.ac.id/files/2011/03/BeansBindingDemo.zip
Look n Feel • Programmatically : use UIManager class. • Non-Programmatically : use --cp:plook_and_feel_jar_path –laflook_and_feel_class_name • Sample code available at http://eriq.lecture.ub.ac.id/files/2011/03/LookAndFeelDemo.zip
Create Installer & Executable • Launch4J , Jsmooth, etc is tool to create executable for java apps in windows. • InnoSetup, NSIS, etc is used to create windows installer. • Tools above are free for non-commercial or commercial use. • Launch4j : http://launch4j.sourceforge.net • Jsmooth : http://jsmooth.sourceforge.net • InnoSetup :http://www.jrsoftware.org/isinfo.php • NSIS : http://nsis.sourceforge.net
Useful Components • JDIC (JDesktop Integration Component) Project : http://java.net/projects/jdic/ • SwingX (Extended Swing Component) : https://swingx.dev.java.net • SwingLabs : http://swinglabs.org