当我使用setOnKeyPressed按下键时,如何在Canvas中绘制图像?

时间:2019-05-29 13:41:44

标签: java javafx canvas event-handling java-canvas

我想在按RIGHT时在画布上绘制图像,但我不知道该怎么做。

首先,我创建两个变量供以后使用,然后创建画布。然后我得到想要绘制的图像。我尝试使用getCode()。equals(KeyCode.Right)获取密钥,但是它不起作用。请帮忙。

public class Controller implements Initializable {

    @FXML
    private Canvas canvas;


    @Override
    public void initialize(URL url, ResourceBundle resourceBundle) {
        double v1 = 0;
        double v2 = 0;

        GraphicsContext gc = canvas.getGraphicsContext2D();
        Image pm = new Image("sample/pacman.png", 20, 20, true, true);


        canvas.setOnKeyPressed(keyEvent -> {
            if (keyEvent.getCode().equals(KeyCode.RIGHT)) {
                gc.drawImage(pm, v1, v2);
            }


        });
    }

}

我希望图像出现,但是它只是一个空程序。

0 个答案:

没有答案