Pergunta

Eu estou usando Qt4 para criar uma tabela, usando a classe QTableWidget.

O problema é: eu quero esconder os rótulos de linha (ou seja, os números). Eu só se preocupam com colunas. Eu quero ter isso:

text alt
(fonte: ldc.usb.ve )

Como posso fazer isso?

Foi útil?

Solução

Eu estava pensando sobre a mesma coisa. No entanto, eu estava com preguiça de encontrar uma solução até que você perguntou. (Obrigado!!). De qualquer forma, aqui está o código que funcionou para mim:

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

Estes são realmente métodos de QTableView. Desde que você use um QTableWidget que é um filho de QTableView , tudo funciona.

Eu não tenho certeza se esta é a melhor maneira de fazer isso, mas o QHeaderView documentação recomenda este método. Para citar o PyQt4 docs-

Aparência

QTableWidget e QTableView criar cabeçalhos padrão. Se você quiser que os cabeçalhos para ser visível, você pode usar setVisible ().
Nota : Cada cabeçalho processa os dados para cada seção própria, e não depende de um delegar. Como resultado, chamando setItemDelegate um header () função não vai ter efeito.

Outras dicas

Você também pode colocar seus dados em um objeto QTableView e ocultar o cabeçalho da linha vertical com um hide () função. Aqui está o código de exemplo,

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

Agora você pode apenas usar método :

setHeaderHidden(true);

herdada de QTreeView . Foi introduzido em Qt4.4.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top