组件行为变化要柔和化,尽量使用动画效果,如淡入淡出、滚动弹出等等。技术上最常用的方法是使用javax.swing.Timer。为什么要使用javax.swing.Timer,这是因为javax.swing.Timer触发的事件都在EDT上执行,是线程安全的。除此外还需掌握 Java 2D的常用接口及图像处理的常见技巧。