如何.setStroke(BasicStroke)?

时间:2015-05-12 20:43:15

标签: java swing jpanel paintcomponent graphics2d

我遇到了以下问题:我想创建一个新的BasicStroke并将其设置在Graphics2D对象上。这是我为该问题编写的代码:

    BasicStroke stil = new BasicStroke(zo.getLinienbreite(),
        BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER);
    g2d.setStroke(stil);

但是构造函数BasicStroke(float,int,int)未定义的错误旁边(如果我正确阅读文档,实际上并不是这样),它说" Graphics2D类型中的方法setStroke(Stroke)不适用于参数(BasicStroke)"。

2 个答案:

答案 0 :(得分:0)

其中一个BasicStroke constructors采用浮点数和两个整数。我猜zo.getLinienbreite()不是浮点数,所以你要么必须明确地转换它

BasicStroke stil = new BasicStroke( (float)zo.getLinienbreite(), ...

或将其更改为在zo的班级中浮动。一旦完成,下一个错误就会消失。

干杯,

答案 1 :(得分:-1)

感谢您的帮助。事实证明我使用了com.sun.prism.BasicStroke而不是导入java.awt.BasicStroke。 再次感谢!