2017-05-20 32 views
1

我正在重建一個我已經在Qt中完成的項目,但只是爲了好玩而使用gktmm。 這些項目包含多個表格,隨着時間的推移,這些表格將獲得越來越多的列和行。最後,它開始有必要水平滾動,並且我希望我的gtk :: TreeView在其行上具有標題,所以它們在水平和垂直滾動時始終可見設置樹形視圖中行的標題gtkmm

這是新項目(左) vs舊項目(右) enter image description here 正如你所看到的那樣,舊的在行上有標題(我忘記把它們放在列上,我知道),這就是我想要實現的。 (以及着色) 如果我簡單地設置第一列並在那裏寫入名稱,它將在水平滾動時不再顯示

回答

1

我不認爲這實際上是在gtk::TreeView中實施的。要獲得該功能,您可能必須重寫滾動方法並隱藏/顯示列,而不是滾動視圖。

Gnumeric使用goffice庫中的GocCanvas小部件來達到所需的效果,但我沒有看到C++綁定。

1

那麼,到目前爲止,我發現最接近的工作解決方案是創建一個除原來的一個邊樹視圖,並填充到它的標題。 這將需要以下

  • 到兩個滾動窗口連接,使他們垂直的同時滾動
  • 連接的行,所以每當我擴大或者樹狀一排,相應的行會擴大對其他樹狀
  • 連接每當一行在任樹視圖選擇的行,對應的行會在其他樹視圖中選擇

我真的很希望這是某種可能的,但我剛剛想通了這一點,我「M沒有嘗試連接

enter image description here

+0

這將會是非常有用的,看你已經產生兩個連接在一起的一些代碼。 – v010dya

+0

我還沒有找到時間來嘗試更多。我找到了一份新工作,這主要是一種愛好 – Coyoteazul