/**
* Create a basic text field for input and a refresh button.
*/
private void makeControls() {
Label label1 = new Label("Placement:");
textField = new TextField();
textField.setPrefWidth(300);
Button button = new Button("Refresh");
button.setOnAction(e -> {
getImage();
textField.clear();
});
}
这段代码几乎使文本字段和旁边的刷新按钮。
最后一行在单击刷新按钮时运行getImage()函数。 getImage()函数几乎是一个函数,它接受用户输入(5个字符),并根据输入将图像放置在GUI上。因此,对于这个问题,我只需要关注用户输入的第3和第4个字符。第三个字符确定x轴,第四个字符确定y轴。我想要这样,如果用户再次输入相同的X和Y轴输入,它不会放下图像,并且用户会收到一些错误消息。
编辑:
ArrayList<String> userInput = new ArrayList<>();
userInput.add(textField.getText().substring(2,4));
if (!(userInput.contains(textField.getText().substring(2,4))))
image.setImage(img);
pane.getChildren().add(image);
因此,我完成了此操作,创建了一个数组列表,并将用户输入添加到其中,尽管只有第二个和第三个字符。然后,我做了一个if语句,以便如果列表中所包含的字符与用户在第二个和第三个索引中输入的字符不同,则它将图像添加到组窗格中。但是,这不起作用,我不确定为什么,逻辑对我来说似乎很好,任何人都知道我在做错什么?