2013-03-25 45 views
2

使用Python和Gtk3,我創建了一個Gtk.TreeView並將其放入一個Gtk.ScrolledWindow。我不喜歡水平滾動條,所以我使用Gtk.PolicyType.NEVER將其刪除,但現在我無法在該方向調整窗口大小。Gtk.ScrolledWindow沒有水平滾動條

所以問題是:如何獲得水平滾動條的座標並同時能夠水平調整窗口的大小?

任何幫助表示讚賞!

觀測數據:我這是怎麼產生的ScrolledWindow:

self.scrolledwindow = Gtk.ScrolledWindow() 
    self.scrolledwindow.set_policy(Gtk.PolicyType.NEVER, 
            Gtk.PolicyType.AUTOMATIC) 
    self.add(self.scrolledwindow) 
+0

顯示一些代碼。這聽起來好像你沒有設置滾動窗口的策略,或者什麼。 – unwind 2013-03-25 14:57:51

+0

正如我在我的問題中所說的,我使用了'Gtk.PolicyType.NEVER'作爲水平滾動條。 – skytux 2013-03-25 15:03:02

+1

您的意思是說,窗口不能水平重新調整大小*,或者它不能(例如)比可能是GtkTreeView首選寬度的某個寬度更窄? – unwind 2013-03-25 15:09:03

回答

2

SOLUTION:

的問題是,窗口不能比Gtk.TreeView更廣泛的行越窄,我也希望我的窗口沒有水平滾動條。該解決我的問題最後的代碼是這樣的:

self.scrolledwindow = Gtk.ScrolledWindow() 
self.scrolledwindow.set_policy(Gtk.PolicyType.NEVER, 
           Gtk.PolicyType.AUTOMATIC) 

... 

renderer_text = Gtk.CellRendererText(weight=600) 
renderer_text.set_fixed_size(200, -1) 
column_text = Gtk.TreeViewColumn('Name', renderer_text, text=1) 

在這種方式中,Gtk.CellRendererText具有最小尺寸,一旦被打開窗戶可以重新調整大小。