@Override
	public void valueChanged(ListSelectionEvent event) {

		if (!event.getValueIsAdjusting()) {
			ListSelectionModel lsm = (ListSelectionModel) event.getSource();
			if (lsm.isSelectionEmpty() == false) {
				try {
					int selectedRow = lsm.getMinSelectionIndex();

					// da in der Tabelle die Autosortierung mit
					// setAutoCreateRowSorter(true) gesetzt wurde, ist die
					// Convertierung notwendig, damit die korrekte Zeile/Spalte
					// ausgewählt wird
					String id = String
							.valueOf(guiBook
									.getBookTable()
									.getModel()
									.getValueAt(
											guiBook.getBookTable()
													.convertRowIndexToModel(
															selectedRow), 0));

					Book myBook = new BookDB().findByID(id);

					guiBook.getBookIdText().setText(
							String.valueOf(myBook.getId()));

					guiBook.getIsbnText().setText(
							String.valueOf(myBook.getIsbn()));

					guiBook.getTitleText().setText(
							String.valueOf(myBook.getTitle()));

					guiBook.getAuthorText().setText(
							String.valueOf(myBook.getAuthor()));

					guiBook.getPublicationDateText().setText(
							String.valueOf(myBook.getPublicationDate()));

					guiBook.getFormatCombo().setSelectedItem(
							String.valueOf(myBook.getFormat()));

					guiBook.getShortDescriptionArea().setText(
							myBook.getShortDescription());

					guiBook.getCategoryCombo().setSelectedItem(
							String.valueOf(myBook.getCategory()));

					guiBook.getCommentArea().setText(
							String.valueOf(myBook.getComment()));

					guiBook.getReadCombo().setSelectedItem(
							String.valueOf(myBook.getRead()));

					// Button "löschen" wird sichtbar gesetzt
					guiBook.getDeleteButton().setEnabled(true);

				} catch (Exception e) {
					System.out.println(e.toString());
					// Ein Dialogfenster mit entsprechender Meldung soll erzeugt
					// werden
					String errorText = "Der ausgewählte Datensatz kann nicht angezeigt werden.";
					new InfoError().showMessage(errorText);

				}
			}
		}
	}