6

このことに問題があります: JPanel に破線 (または点線) の境界線を何らかの方法で追加できますか?

私はSOの質問を検索しましたが、これまで誰も質問していないようです。

使用するクラスがあるかどうか疑問に思っています。実際に私は使用しています:

myPanel.setBorder(BorderFactory.createLineBorder(Color.BLACK));

明らかに、これは標準的な境界線がほとんどない標準的なクラスであり、誰も私にとって役に立ちません。

4

3 に答える 3

12

Java 7 以降では、 を使用できますBorderFactory.createDashedBorder(Paint)

Java 7 より前では、この境界を自分で定義する必要がありました。次に、この自己記述ボーダーを使用できます。

private class DashedBorder extends AbstractBorder {
    @Override
    public void paintBorder(Component comp, Graphics g, int x, int y, int w, int h) {
        Graphics2D gg = (Graphics2D) g;
        gg.setColor(Color.GRAY);
        gg.setStroke(new BasicStroke(1, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0, new float[]{1}, 0));
        gg.drawRect(x, y, w - 1, h - 1);
    }
}
于 2013-03-07T12:12:26.370 に答える
5

を探していBorderFactory.createDashedBorder(Paint)ます。

于 2012-10-05T01:35:58.613 に答える