Javafx:侦听Controller.java中的widthProperty更改
我在Controller.java中有以下代码:Javafx:侦听Controller.java中的widthProperty更改,java,javafx,Java,Javafx,我在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.
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是无效的方法声明。是否有人知道如何修复此问题。以下代码块需要进入控制器的构造函数或初始化方法,才能被Intellij识别:
scene.widthProperty().addListener((obs, oldVal, newVal) -> {
stage.setTitle(newVal.toString()); //test
int newSize = Integer.parseInt(newVal.toString());
});
Intellij无法识别它,因为语句需要出现在代码块内部 您可以将您正在使用的导入添加到问题中的代码中吗?如果没有太多的代码,请包含整个控制器。我添加了整个controller.javaYou在复制和粘贴时犯了一些错误。该代码不在方法中。谢谢。我还是可以把它弄到手。知道为什么吗?