You need to derive your BookView from QWidget. Use Qt Designer to design the widget - that's easiest. You will probably want to start with a grid or form layout, and add QLabel items that will hold the book image, title, and other strings.

At run time, when you read your list of books, you'll create a BookView widget instance for each book, and set the image on the BookView instance's imageLabel, the title string as the text on titleLabel, and so on. You can then install that in the table widget using QTableWidget::setCellWidget() method. After you are done inserting everything, you'll probably want to call resizeRowsToContents() and resisizeColumnsToContent() on the table widget.