Here you can find the source of topEtchBorder()
public static Border topEtchBorder()
//package com.java2s; /*//from ww w . j av a 2s. co m * Copyright 2012 Eike Kettner * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import javax.swing.border.Border; import java.awt.Component; import java.awt.Graphics; import java.awt.Insets; public class Main { public static Border topEtchBorder() { return new Border() { @Override public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) { g.translate(x, y); g.setColor(c.getBackground().darker()); g.drawLine(0, 0, width - 2, 0); g.setColor(c.getBackground().brighter()); g.drawLine(1, 1, width - 3, 1); g.translate(-x, -y); } @Override public Insets getBorderInsets(Component c) { return new Insets(3, 0, 0, 0); } @Override public boolean isBorderOpaque() { return true; } }; } }