set Border for JComponent - Java Swing

Java examples for Swing:JComponent

Description

set Border for JComponent

Demo Code

/******* BEGIN LICENSE BLOCK *****
 * Versi?n: GPL 2.0/CDDL 1.0/EPL 1.0/*  w  w w. j av a  2s . c  o m*/
 *
 * Los contenidos de este fichero est?n sujetos a la Licencia
 * P?blica General de GNU versi?n 2.0 (la "Licencia"); no podr?
 * usar este fichero, excepto bajo las condiciones que otorga dicha 
 * Licencia y siempre de acuerdo con el contenido de la presente. 
 * Una copia completa de las condiciones de de dicha licencia,
 * traducida en castellano, deber? estar incluida con el presente
 * programa.
 * 
 * Adicionalmente, puede obtener una copia de la licencia en
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Este fichero es parte del programa opensiXen.
 *
 * OpensiXen es software libre: se puede usar, redistribuir, o
 * modificar; pero siempre bajo los t?rminos de la Licencia 
 * P?blica General de GNU, tal y como es publicada por la Free 
 * Software Foundation en su versi?n 2.0, o a su elecci?n, en 
 * cualquier versi?n posterior.
 *
 * Este programa se distribuye con la esperanza de que sea ?til,
 * pero SIN GARANT??A ALGUNA; ni siquiera la garant?a impl?cita 
 * MERCANTIL o de APTITUD PARA UN PROP?SITO DETERMINADO. Consulte 
 * los detalles de la Licencia P?blica General GNU para obtener una
 * informaci?n m?s detallada. 
 *
 * TODO EL C?DIGO PUBLICADO JUNTO CON ESTE FICHERO FORMA PARTE DEL 
 * PROYECTO OPENSIXEN, PUDIENDO O NO ESTAR GOBERNADO POR ESTE MISMO
 * TIPO DE LICENCIA O UNA VARIANTE DE LA MISMA.
 *
 * El desarrollador/es inicial/es del c?digo es
 *  FUNDESLE (Fundaci?n para el desarrollo del Software Libre Empresarial).
 *  Nexis Servicios Inform?ticos S.L. - http://www.nexis.es
 *
 * Contribuyente(s):
 *  Alejandro Gonz?lez <alejandro@opensixen.org> 
 *
 * Alternativamente, y a elecci?n del usuario, los contenidos de este
 * fichero podr?n ser usados bajo los t?rminos de la Licencia Com?n del
 * Desarrollo y la Distribuci?n (CDDL) versi?n 1.0 o posterior; o bajo
 * los t?rminos de la Licencia P?blica Eclipse (EPL) versi?n 1.0. Una 
 * copia completa de las condiciones de dichas licencias, traducida en 
 * castellano, deber?n de estar incluidas con el presente programa.
 * Adicionalmente, es posible obtener una copia original de dichas 
 * licencias en su versi?n original en
 *  http://www.opensource.org/licenses/cddl1.php  y en  
 *  http://www.opensource.org/licenses/eclipse-1.0.php
 *
 * Si el usuario desea el uso de SU versi?n modificada de este fichero 
 * s?lo bajo los t?rminos de una o m?s de las licencias, y no bajo los 
 * de las otra/s, puede indicar su decisi?n borrando las menciones a la/s
 * licencia/s sobrantes o no utilizadas por SU versi?n modificada.
 *
 * Si la presente licencia triple se mantiene ?ntegra, cualquier usuario 
 * puede utilizar este fichero bajo cualquiera de las tres licencias que 
 * lo gobiernan,  GPL 2.0/CDDL 1.0/EPL 1.0.
 *
 * ***** END LICENSE BLOCK ***** */
//package com.java2s;
import java.awt.Color;
import javax.swing.BorderFactory;
import javax.swing.JComponent;
import javax.swing.border.Border;

public class Main {
    private static Color BorderColor = Color.red;

    public static JComponent setBorder(JComponent comp, boolean setBorder) {
        return setBorder(comp, setBorder, BorderColor);
    }

    public static JComponent setBorder(JComponent comp, boolean setBorder,
            Color col) {
        Border redline = BorderFactory.createLineBorder(col);
        Border raisedbevel = BorderFactory.createRaisedBevelBorder();
        Border loweredbevel = BorderFactory.createLoweredBevelBorder();

        Border compound1 = BorderFactory.createCompoundBorder(raisedbevel,
                loweredbevel);

        Border compound2 = BorderFactory.createCompoundBorder(redline,
                compound1);

        if (setBorder)
            comp.setBorder(compound2);
        else
            comp.setBorder(null);

        return comp;
    }
}

Related Tutorials