JSeparator破旧风格

时间:2014-11-22 12:28:15

标签: java swing jseparator

我在java swing应用程序中使用JSeparator。正常实现使分隔符正常;但我需要的是分隔符应该是虚线(就像我们创建虚线边框)。我们有什么方法可以做到吗?

由于

2 个答案:

答案 0 :(得分:2)

您可以使用以下代码段创建虚线。

import java.awt.Container;
import java.awt.Graphics;
import java.awt.GridLayout;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSeparator;

public class SeparatorSample {
    public static void main(String args[]) {
        JFrame f = new JFrame("JSeparator Sample");
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        Container content = f.getContentPane();
        content.setLayout(new GridLayout(0, 1));
        JLabel above = new JLabel("Above Separator");
        content.add(above);
        JSeparator separator = new JSeparator() {
            private static final long serialVersionUID = 1L;

            public void paintComponent(Graphics g) {
                for (int x = 0; x < 300; x += 15)
                    g.drawLine(x, 0, x + 10, 0);
            }
        };
        content.add(separator);
        JLabel below = new JLabel("Below Separator");
        content.add(below);
        f.setSize(300, 100);
        f.setVisible(true);
    }
}

答案 1 :(得分:2)

要创建自定义JSeparator,您可以覆盖BasicSeparatorUIpaint()方法,讨论here,并使用虚线Stroke绘制线条,图示here