Swinghacks——自定义边框
自定义边框用到的情况也比较少(如果只是为了美观的话)
如下图,把刻度做到边框上是个不错的选择

当然如果真的为了美观,那看看下面的图片:

这又让我想起做web时用div布局,宽度自增长时那css写的真是累,ui ux什么的是很花时间和心思,哎,不过swing就算了,不美观而且设计的非常复杂。个人还是比较支持原生态swt,但是如果真决定用swt写一个产品的话,那其实可以考虑不用java了。要原生态效果,语言选择就多了。
跑题了,回到边框。原理基本上就是画,上下左右 加上 4个角,共8个边框需要画。所以画边框的时候,需要知道的信息就是,边框占据多大空间 和 组件的宽高
边框继承Border接口,此接口共3个方法:
1、获取边框宽度信息
void paintBorder(Component c, Graphics g, int x, int y, int width, int height);
如果想自定义边框,那extends AbstractBorder是不错的选择