Пишу программу в которой вызывается 2й фрейм в котором происходит выбор папки. При нажатии кнопки закрывается фрейм и путь передается в 1й фрейм в котором есть TextField для отображения пути. Вопрос в том что не могу настроить изменения поля постольку не могу вызиваться нон-статик переменные с других классов (хотел сделать изменение при нажатии потому что 1й фрейм не закрывается при открытии второго). Есть ли способ добавить лисенер (на изменение String пути или нажатии кнопки в другом фрейме) при котором я смогу поменять TextField. Спасибо.
public class Controller {
// First frame controller
public static String path;
public static String nickname;
@FXML
private TextField nicknameField;
@FXML
public TextField pathField;
@FXML
private Button changeDirButton;
@FXML
private Button submitButton;
@FXML
void initialize() {
changeDirButton.setOnAction(event -> {
FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("/sample/dirs/dirs.fxml"));
try {
loader.load();
} catch (IOException e) {
}
Parent r = loader.getRoot();
Stage stage = new Stage();
stage.setTitle("Directories");
stage.setScene(new Scene(r, 400, 310));
stage.showAndWait();
});
}
}
//Метод высылки String в другой класс и закрытия фрейма
pathSubmitButton.setOnAction(actionEvent -> {
Controller.path = path;
pathSubmitButton.getScene().getWindow().hide();
System.out.println(Controller.path);
});
Если действовать прямолинейно и в лоб, то:
после вызова loader.load();
можно получить getController() вашего второго окна и имея его экземпляр передать в него this
контроллер исходного окна, он и будет своего рода слушателем. А там уже дергайте нужные методы. Если программа небольшая, то подход имеет место быть, но такое может быстро превратиться в неконтролируемый хаос. Можно так же обыграть использование слушателей у Property fx типов и посмотреть в сторону EventBus
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Есть ли библиотека Java, в которой была бы функция сжатия JPG изображения до определённого (в параметрах) размера в байтах?
Пожалуйста, помогите составить регулярное выражение, которое будет матчить такой текст:
Как в андроиде использовать протокол exchange ActivveSync ?Не могу найти ни туториал не пример , везде показывают как подключать его в почту андроида...