我尝试创建一些形状的javafx库。
因此,在“开始”方法中,当我创建一个新圆并将其添加到根中时,我没有任何问题:
@Override
public void start(Stage primaryStage) {
Group root = new Group();
Scene scene = new Scene(root, 800, 600, Color.LIGHTBLUE);
primaryStage.setScene(scene);
Circle cercle = new Circle();
cercle.setCenterX(300);
cercle.setCenterY(200);
cercle.setRadius(100);
cercle.setFill(Color.YELLOW);
cercle.setStroke(Color.ORANGE);
cercle.setStrokeWidth(5);
root.getChildren().add(cercle);
primaryStage.show();
}
但是,当我尝试使用矩形执行此操作时,编译器不接受,并在“ add”方法下绘制一条红线
@Override
public void start(Stage primaryStage) {
Group root = new Group();
Scene scene = new Scene(root, 800, 600, Color.LIGHTBLUE);
primaryStage.setScene(scene);
Rectangle rectangle = new Rectangle();
rectangle.setX(300);
rectangle.setY(200);
rectangle.setWidth(300);
rectangle.setHeight(200);
rectangle.setFill(Color.GREEN);
rectangle.setStroke(Color.DARKGREEN);
rectangle.setStrokeWidth(5);
rectangle.setArcHeight(30);
rectangle.setArcWidth(30);
root.getChildren().add(rectangle);
primaryStage.show();
}
编译器说:
List类型中的add(Node)方法不适用于
参数(矩形)
我在其他程序中看到了这一点,它正常工作。
注意:我使用Eclipse Luna和JDK 8
最佳答案
采用
import javafx.scene.shape.Rectangle;
代替
import java.awt.Rectangle;