変数 =《Canvas》.getGraphicsContext2D();GraphicsContextの取得は、Canvasインスタンスの「getGraphicsContext2D」メソッドで行います。これでインスタンスが取得できるので、これを変数などに保管しておき利用します。《GraphicsContext》.setFill(《Color》);描画を行う際には、あらかじめ描く図形に関する細かな設定を行っておく必要があります。ここでは、「色」に関する設定だけ用意してあります。「setFill」は、塗りつぶしの内容を設定するもので、「setStroke」は線分の描画内容を設定するものです。
《GraphicsContext》.setStroke(《Color》);
new Color( 赤 , 緑 , 青 )という形でインスタンスを作成することができます。この辺りは、java.awt.Colorとほぼ同じ感覚ですからなんとなくわかるでしょう。
gc.fillRect(50, 50, 150, 150);GraphicsContextには、この他にも多数の描画メソッドが用意されています。多くの描画メソッドは、「図形の内部を塗りつぶす」「図形の輪郭線を描くという2種類が用意されています。塗りつぶしは「fill○○」、輪郭線の描画は「stroke○○」といった名前になっています。ここでは「四角形(Rect)を塗りつぶす(fill)」「楕円(Oval)の輪郭を描く(stroke)」という2つの描画を行っているので、それぞれ「fillRect」「strokeOval」というメソッドを呼び出していたのです。
gc.strokeOval(100, 100, 50, 50);
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
package com.tuyano.libro;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.canvas.Canvas;
import javafx.scene.canvas.GraphicsContext;
import javafx.scene.paint.Color;
public class AppController implements Initializable {
@FXML Canvas canvas;
GraphicsContext gc;
@Override
public void initialize(URL location, ResourceBundle resources) {
gc = canvas.getGraphicsContext2D();
draw();
}
void draw(){
gc.setFill(Color.RED);
gc.setStroke(Color.BLUE);
gc.fillRect(50, 50, 150, 150);
gc.strokeOval(100, 100, 50, 50);
}
}
| << 前へ | 次へ >> |