BasicStrokeで点線を作成

編集者:Terai Atsuhiro
作成日:2004-10-04
更新日:2021-10-27 (水) 00:02:51

概要

点線・破線を描画します。

http://terai.xrea.jp/swing/dashedline/screenshot.png

サンプルコード

label = new JLabel() {
  BasicStroke dashed2 = new BasicStroke();
  public void paintComponent(Graphics g) {
    Graphics2D g2 = (Graphics2D)g;
    super.paintComponent(g2);
    if(flag) dashed2 = new BasicStroke(1.0f, BasicStroke.CAP_BUTT,
                  icStroke.JOIN_MITER, 10.0f, getDashArray(), 0.0f);
    flag = false;
    g2.setStroke(dashed2);
    g2.drawLine(5, label.getHeight()/2, label.getWidth()-10,
                label.getHeight()/2);
  }
};

解説

BasicStrokeの破線属性を指定して点線を描画します。

上記のサンプルでは、カンマ区切りで記入した数値を配列に分解し、これを破線のパターンとしてBasicStrokeに渡しています。

参考リンク

コメント