我在java swing应用程序中使用JSeparator。正常实现使分隔符正常;但我需要的是分隔符应该是虚线(就像我们创建虚线边框)。我们有什么方法可以做到吗?
由于
答案 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
,您可以覆盖BasicSeparatorUI
的paint()
方法,讨论here,并使用虚线Stroke
绘制线条,图示here。