Here you can find the source of recursiveAddBorderToPanel(JComponent c)
public static void recursiveAddBorderToPanel(JComponent c)
//package com.java2s; /*/*from w ww. j av a 2s .c o m*/ * Copyright 2004-2010 Information & Software Engineering Group (188/1) * Institute of Software Technology and Interactive Systems * Vienna University of Technology, Austria * * 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.ifs.tuwien.ac.at/dm/somtoolbox/license.html * * 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 java.awt.Color; import java.awt.Component; import javax.swing.BorderFactory; import javax.swing.JComponent; import javax.swing.JPanel; public class Main { public static void recursiveAddBorderToPanel(JComponent c) { if (c instanceof JPanel) { JPanel panel = (JPanel) c; panel.setBorder(BorderFactory.createTitledBorder( BorderFactory.createLineBorder(Color.BLUE), panel.getName())); for (Component ch : panel.getComponents()) { if (ch instanceof JComponent) { recursiveAddBorderToPanel((JComponent) ch); } } } } }