Java - некорректное действие при установке флажка - PullRequest
0 голосов
/ 25 октября 2019

Я работаю на Java FX.
У меня есть табличное представление, в котором я создал столбец "выбрать флажок". Цель - когда пользователь нажимает на флажок, появляется предупреждающее сообщение.
Чтобы проверить его, я сначала попытался отобразить сообщение System.out.println.
Проблема заключается в следующем:

  • когда я выбираю только один флажок, у меня появляется сообщение System.out.println, которое записывает все флажки:
com.calculatrice.app.model.Person@34752060
com.calculatrice.app.model.Person@654bd7bc
com.calculatrice.app.model.Person@74bbebe0
com.calculatrice.app.model.Person@2e23be4f
com.calculatrice.app.model.Person@3348edcb
com.calculatrice.app.model.Person@8052a29
com.calculatrice.app.model.Person@23ca3422
com.calculatrice.app.model.Person@102837d2
com.calculatrice.app.model.Person@647ab6a9
  • , когда я ничего не выбираю,У меня такое же сообщение System.out.println

Как мне сделать, чтобы сообщение с элементом (ями) соответствовало выбранным флажкам (ам)?

Вотмой фрагмент:

  private void selectCheckBox(ActionEvent ae) {
         // personTable is the Tableview ; Person is the class where the getter is declared
        for(Person p : personTable.getItems()){
            if (p.getSelect().isSelected()){
                System.out.println (p + " is selected");
            }
        }
}

1 Ответ

1 голос
/ 25 октября 2019

Вы можете пометить флажки, а затем использовать getLabel, чтобы получить их имя.

        if (p.getSelect().isSelected()){
            System.out.println (p.getLabel() + " is selected");
        }

В качестве альтернативы, если вы не хотите видеть видимые ярлыки, вы можете использовать setName и getName.

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