Это мой следующий код, я добавил иконку в filetable (столбец 0), но я не могу изменить ширину столбца 0
void Window::showFiles(const QStringList &files)
{
int row=0 ;
filesTable->clearContents();
for (int i = 0; i < files.size(); ++i) {
QTableWidgetItem *fileNameItem;
QTableWidgetItem *icon_item = new QTableWidgetItem;//
QIcon icon("myPATH/3.png");
icon_item->setIcon(icon);
QFile file(currentDir.absoluteFilePath(files[i]));
qint64 size = QFileInfo(file).size();
fileNameItem = new QTableWidgetItem(files[i]);
fileNameItem->setFlags(fileNameItem->flags() ^ Qt::ItemIsEditable);filesTable->insertRow(i);
filesTable->setItem(i, 0, icon_item);
filesTable->setItem(i, 1, fileNameItem);
filesTable->setColumnWidth(0,1);
filesTable->resizeColumnsToContents();
qDebug()<<"-***-"<<filesTable->columnWidth(0)<<endl;
row++;
if(filesTable->item(i,1)->text()==fileNameImg){
filesTable->selectRow(i);
}
}
filesFoundLabel->setText(tr("%1 file(s) found").arg(files.size()) +(" (Double click on a file to open it)"));
filesFoundLabel->setWordWrap(true);
}
но мой вид таблицы таков:
Есть ли способ уменьшить расстояние между значком (элемент столбца 0) и текстом (элемент столбца 1)?
ОБНОВЛЕНИЕ 1:
я добавил filesTable->resizeColumnsToContents();
в мой код, но это не имеет значения, мне нужно максимально сократить разрыв
Попробуйте resizeColumnToContents (int column), чтобы приблизить их.
Объединение двух таблиц в одну таблицу. Так что приходится фиксировать размер таблицы и объединять в одну таблицу. Может работать setColumnWidth на итоговой таблице.
Размер выборки, который я здесь пробовал,
fileNameItem->resize(100,100);
icon_item->resize(50,100);
filesTable->setColumnWidth(0,100);
filesTable->setColumnWidth(1,50);
Эта попытка поможет вам ..