Для моего приложения я использую базу данных и вам нужно добавлять и удалять элементы в базе данных. У меня есть метод, в котором я делаю кнопку, видимую, когда вы выбрали элемент из списка, эта кнопка позволяет удалить элемент. Я использовал это уже 2 раза, но для следующего кода он не работает. Когда я отлаживаю его, я замечаю, что он идет дважды через мой if, и второй раз он говорит, что ничего не выбрано, поэтому он возвращает значение null.Почему это происходит дважды, если и возвращает значение null во второй раз?
private void lstGenresValueChanged(javax.swing.event.ListSelectionEvent evt) {
Object geselecteerdeObject = lstGenres.getSelectedValue();
Genre geselecteerdGenre = (Genre) geselecteerdeObject;
if (geselecteerdeObject != null) {
txtGenreNaam.setText(geselecteerdGenre.getGenreNaam());
System.out.println(geselecteerdGenre.getGenreNaam());
ophalenGenresLijst();
}
if (lstGenres.isSelectionEmpty()) {
btnVerwijderen.setEnabled(false);
btnWijzigen.setEnabled(false);
} else {
btnVerwijderen.setEnabled(true);
btnWijzigen.setEnabled(true);
}
}
Я также попытался поставить это в моем случае, но это ничего
if (lstPersonen.getSelectedIndices().length == 0) {
Однако здесь не изменить это работает
Object geselecteerdeObject = lstFilms.getSelectedValue();
Film geselecteerdeFilm = (Film) geselecteerdeObject;
if (geselecteerdeObject != null) {
String filmIdAlsString = Integer.toString(geselecteerdeFilm.getFilmId());
txtFilmNaam.setText(geselecteerdeFilm.getFilmNaam());
txtFilmJaar.setText(geselecteerdeFilm.getFilmJaar() + "");
txtAantalMinuten.setText(geselecteerdeFilm.getAantalMinuten() + "");
txtIMDbScore.setText(geselecteerdeFilm.getIMDbScore() + "");
updateGenreLijst(geselecteerdeFilm.getFilmId());
updateActeurLijst(geselecteerdeFilm.getFilmId());
updateRegisseurLijst(geselecteerdeFilm.getFilmId());
}
if (lstFilms.isSelectionEmpty()) {
btnVerwijderen.setEnabled(false);
btnWijzigen.setEnabled(false);
} else {
btnVerwijderen.setEnabled(true);
btnWijzigen.setEnabled(true);
}
спасибо, что было на самом деле проблема, это не неправильный метод, но я назвал его на не то место. Я не думал, что это повлияет на него, но спасибо. –
Отлично! Одно крошечное предложение для вашего второго, если: boolean hasSelection =! LstGenres.isSelectionEmpty; btnVerwijderen.setEnabled (hasSelection); btnWijzigen.setEnabled (hasSelection); Я нахожу это более читабельным. –