我让类继承自 QListWidget 并覆盖 resizeEvent:
void ListaDrzew::resizeEvent(QResizeEvent *event)
{
QListWidget::resizeEvent(event);
int width = event->size().width() / columnNumber - 10;
setIconSize(QSize(width, width));
setGridSize(iconSize());
}
但有时当我通过拆分器调整小部件的大小时,应用程序会因以下消息而崩溃:
QPainter::begin: Paint device returned engine == 0, type: 2
用户调整小部件大小时更改 iconSize 和 gridSize 的正确方法是什么?我尝试使用 BlockingQueuedConnection 并向自己发出信号,但这会导致死锁。