void MainWindow::RemoveImage() { QListWidgetItem *current = list->currentItem(); if (current) { ImageView * view = current->data(Qt::UserRole).value<ImageView *>(); view->close(); list->takeItem(list->row(current)); if (list->count() == 0) { fPreview->setEnabled(false); fRemove->setEnabled(false); } } }