Можно ли в формате Netbeans сохранять аннотацию @FXML встроенной в поля? - PullRequest
1 голос
/ 30 мая 2019

Я хочу, чтобы мои аннотации @FXML были встроены в мои объявления полей, и я все еще могу использовать опцию формата Netbeans (shift + ^ + F). Тем не менее, он всегда переформатирует их так, чтобы они находились в строке над пустым пространством моего объявления, как показано в примерах до и после ниже. Кто-нибудь знает, как это сделать в Netbeans?

Это код в формате, который мне нравится и который я хочу сохранить.

public class LoginController implements Initializable {

    @FXML private TextField usernameTextField;
    @FXML private TextField visiblePasswordTextField;
    @FXML private PasswordField passwordField;
    @FXML private CheckBox showPasswordCheckBox;
    @FXML private Button login;

Это код после запуска опции форматирования в Netbeans.

public class LoginController implements Initializable {

    @FXML
    private TextField usernameTextField;
    @FXML
    private TextField visiblePasswordTextField;
    @FXML
    private PasswordField passwordField;
    @FXML
    private CheckBox showPasswordCheckBox;
    @FXML
    private Button login;

1 Ответ

1 голос
/ 30 мая 2019

В NetBeans есть параметр конфигурации, который делает именно то, что вам нужно:

  • Выберите Инструменты> Параметры> Редактор , затем перейдите на вкладку Форматирование .
  • Выберите Java из раскрывающегося списка Language , затем Wrapping из раскрывающегося списка Category .
  • Найдите параметр Annotations в левом столбце, а затем измените значение по умолчанию Always на Never :

    annotation setting

  • Нажмите кнопку Применить и закройте окно Параметры .

Как только это будет сделано, вы можете разместить аннотации в той же строке, что и код, и переформатирование не приведет к их переносу в отдельную строку.

Я специально не тестировал @FXML, но я проверил это с помощью некоторого тривиального кода, который имеет несколько аннотаций методов:

package javaapplication10;

public class JavaApplication10 {

    public static void main(String[] args) {

        Foo foo = new Foo();
        System.out.println("Foo.dummy() = " + foo.dummy());

    }

    @Deprecated public int dummy() {
        return 42;
    }

}

class Foo extends JavaApplication10 {

    @Override public int dummy() {
        return 41;
    }

}

Также есть Аргументы аннотацийПараметр (показан на снимке экрана выше), хотя, поскольку он имеет настройку по умолчанию Никогда , вы, вероятно, никогда не захотите изменить его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...