42

と がQTableViewありQAbstractTableModelます。行の高さが 24 である必要があります。これを行う唯一の方法は、 を呼び出すことQTableView::setRowHeightです。setRowHeightモデルは動的であるため、新しい行が追加される可能性がありますが、新しい行が追加されるたびに呼び出したくありません。

新しく追加された行に同じ高さを使用するように設定するにはどうすればよいQTableViewですか、またはモデルに行の高さを送信できますか?

4

1 に答える 1

86

Qt バージョン < 5の場合

QHeaderView *verticalHeader = myTableView->verticalHeader();
verticalHeader->setResizeMode(QHeaderView::Fixed);
verticalHeader->setDefaultSectionSize(24);

Qtバージョン >= 5 の場合

QHeaderView *verticalHeader = myTableView->verticalHeader();
verticalHeader->setSectionResizeMode(QHeaderView::Fixed);
verticalHeader->setDefaultSectionSize(24);

その関数が垂直ヘッダーに適用されない場合はsetRowHeight()、新しい行を追加するたびに呼び出す必要があります。

于 2013-10-10T19:37:53.003 に答える