Итак, у меня есть класс SnapshotPanel: public QListWidget, который я пытаюсь добавить QListWidgetItem динамически, однако когда-либо я пытаюсь получить segfault. Я подтвердил, что мой код для добавления элемента является правильным, поскольку я могу добавить его в список, когда я создаю свою SnapshotPanel. Однако я не могу добавить к панели, когда код вызывается через сигналы и слот, понимание того, что мне не хватает, будет оценено.Добавление QListWidgetItem в QListWidget
Вот конструктор:
SnapshotPanel::SnapshotPanel(QWidget *parent):QListWidget(parent)
{
this->setViewMode(QListWidget::IconMode);
this->setIconSize(QSize(256,256));
this->setResizeMode(QListWidget::Adjust);
QIcon icon("icon.jpeg");
QListWidgetItem *widget = new QListWidgetItem(icon,"Earth");
this->addItem(widget);
}
Так есть ли причина, почему я не смог бы использовать следующий код при вызове с помощью сигналов и слотов:
{
QIcon icon("icon.jpeg");
QListWidgetItem *widget = new QListWidgetItem(icon,"Earth");
this->addItem(widget);
}
Имеются ли несколько потоков? Почему вы подклассифицированы из 'QListWidget'? Где находится остальная часть кода «SnapshotPanel»? Это Qt 4 или Qt 5? –
Какой сигнал вы используете? И где вы подключаете его к слоту? – agold
При отправке вопроса о проблеме с кодом, пожалуйста, напишите полный пример, который воспроизводит проблему, или, по крайней мере, пост-код, который сам имеет проблему. Все, что вы показали правильно, - и вы сами знали бы, что если бы вы только скопировали код из своего вопроса в новый проект и попробовали его самостоятельно. –