2013-07-17 306 views
0

我有一個QTreeView在我的窗口,我想設置以下行爲:列的寬度必須設置爲調整大小的內容,我已經這樣做了:QTreeView設置列大小內容,沒有多行(固定行高)

tabla->header()->setResizeMode(QHeaderView::ResizeToContents); 

現在,我需要做的是設置行只有1號線,因此,如果列包含「\ n」,他們不應該被顯示出來(我有一個詳細的說明對話框看到)。

總結一下,我需要在我的樹型視圖中設置「沒有多行」。

任何幫助,將不勝感激。

我寧願不延長QTreeView則,因爲我有很多thems的和不希望改變他們所有,但如果這就是它需要...

+0

你已經'uniformRowHeights'設置爲true了嗎?爲什麼不用一個簡單的'replace(「\ n」,「」)'來解決這個問題呢? –

+0

我現在就試試。 替換不起作用,因爲我的客戶端有點煩人:P 他放置'\ n',然後抱怨表中某些行的高度。 編輯:這個伎倆。非常感謝,如果您發佈答案,我會選擇:D – Lautaro

回答

1

QTreeView似乎忽略的內容,新行當uniformRowHeights爲真(見Qt-4.8)

這沒有記錄,所以通常不應該依賴它。填充樹視圖時最好刪除換行符或用空格替換它們。

此外,我已經注意到一個例外:如果treeview中只有一行,並且它包含一個換行符,則它將顯示在兩行中,而不管uniformRowHeights

+0

謝謝!那樣做了! – Lautaro

相關問題