我在Controller.java中有以下代码:
package sample;
import javafx.fxml.FXML;
import javafx.scene.Scene;
import javafx.scene.control.TabPane;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;
import java.awt.*;
import java.net.URL;
import java.util.ResourceBundle;
public class Controller{
@FXML
HBox fontBox;
Stage stage = (Stage) fontBox.getScene().getWindow();
Scene scene = stage.getScene();
scene.widthProperty().addListener((obs, oldVal, newVal) -> {
stage.setTitle(newVal.toString()); //test
int newSize = Integer.parseInt(newVal.toString());
});
}
IntelliJ不识别widthProperty,并说addListener是无效的方法声明。有谁知道如何解决这个问题。
答案 0 :(得分:1)
下面的代码块需要进入控制器的构造函数或初始化方法才能被Intellij识别:
scene.widthProperty().addListener((obs, oldVal, newVal) -> {
stage.setTitle(newVal.toString()); //test
int newSize = Integer.parseInt(newVal.toString());
});
Intellij无法识别它,因为语句需要出现在代码块中。