Как запретить пользователю изменять размер столбцов QTableWidget?

Я хотел бы лично управлять шириной моих столбцов в таблице, но после изменения их размера из кода я не могу найти способ запретить пользователю изменять их размер вручную. Я обнаружил, что QTableView имеет слот columnResized(), и единственные способы сделать это, которые я вижу, — это либо создание подкласса QTableWidget, либо повторное изменение размера столбцов в событии таймера.

Может есть способ проще?


person Septagram    schedule 31.01.2012    source источник


Ответы (1)


Это можно сделать с помощью:

void QHeaderView::setSectionResizeMode (ResizeMode mode)
void QHeaderView::setSectionResizeMode (int logicalIndex, ResizeMode mode)

Горизонтальный заголовок доступен из QTableWidget с помощью horizontalHeader().

Это оно:

ui->tMeal->horizontalHeader()->setSectionResizeMode (QHeaderView::Fixed);

Обратите внимание, что устаревшие (Qt4) приложения должны использовать setResizeMode().

person Septagram    schedule 31.01.2012