Подтвердить что ты не робот

Скрытие ярлыков строк

Я использую Qt4 для создания таблицы, используя класс QTableWidget. Я получаю что-то вроде этого:

alt text http://caterpillar.onlyfun.net/Gossip/Qt4Gossip/images/QTableWidgetQTableWidgetItem-1.jpg

Проблема заключается в следующем: я хочу скрыть ярлыки строк (т.е. числа). Мне просто нравятся столбцы. Я хочу получить следующее:

alt text http://www.ldc.usb.ve/docs/qt/images/windowsxp-tableview.png

Как я могу это сделать?

4b9b3361

Ответ 1

Мне было интересно об одном и том же. Тем не менее, я был слишком ленив, чтобы найти решение, пока вы не попросили. (Благодарю!!). Во всяком случае, вот код, который работал у меня:

    table = QtGui.QTableWidget()
    table.verticalHeader().setVisible(False)

Это фактически методы QTableView. Поскольку вы используете QTableWidget, который является дочерним элементом QTableView, все работает.

Я не уверен, что это лучший способ сделать это, но документация QHeaderView рекомендует этот метод. Чтобы процитировать PyQt4 docs-

Внешний вид

QTableWidget и QTableView создают заголовки по умолчанию. Если вы хотите, чтобы заголовки были видимый, вы можете использовать setVisible().
Примечание. Каждый заголовок отображает данные для каждого раздела и не полагается на делегировать. В результате при вызове функции header setItemDelegate() не будет эффект.

Ответ 2

Вы также можете поместить свои данные в объект QTableView и скрыть заголовок вертикальной строки с помощью функции hide(). Вот пример кода,

 QTableView *empview = new QTableView();
 empview->verticalHeader()->hide();

Ответ 3

Теперь вы можете просто использовать метод:

setHeaderHidden(true);

унаследовано от QTreeView. Он был введен в Qt4.4.