2013-01-10 54 views
4

在Python中试验Gtk + 3。在网格中的Gtk滚动窗口大小

尝试在滚动窗口容器内将“Gtk.TreeView”与输入框一起添加到网格窗口。问题是滚动区域很小,因此几乎看不到任何滚动窗口/ TreeView。下面是输出的图像:

enter image description here

相关的代码是:

scroll = Gtk.ScrolledWindow() # Create scroll window 
scroll.add(self.MatchTree)  # Adds the TreeView to the scroll container 

grid = Gtk.Grid()    # Create grid container 
self.add(Grid)     # Add grid to window (self) 
Grid.add(scroll)     # Add scroll window to grid 
Grid.attach_next_to(self.Entry, scroll, Gtk.PositionType.BOTTOM, 1, 1) # Attach entry to bottom of grid. 

那么如何控制滚动区域的大小?

干杯, 菲尔

回答

6

你需要做的是将GtkScrolledWindowhexpandvexpand属性设置为True。为此,您可以在创建对象是这样的:

scroll = Gtk.ScrolledWindow(hexpand=True, vexpand=True) 

如果你到它,我建议你使用Glade工作程序的界面,这让很多简单的工作出了这种问题,因为你可以轻松访问所有小部件属性。

+0

太好了,谢谢你的建议。我试过格莱德,但认为这只是另一个关于我仍然试图抓住的话题的抽象层次。但是在向用户展示所有选项方面你是对的。我会牢记这一点! –

+1

我明白了,有时候最好先从事手工操作以了解如何更好地使用它。尽管如此,当你发现你写的东西不能按照你的意图工作时,你可以使用Glade来测试不同的属性组合,以使其工作(事实上,这就是我发现你的代码问题:) – asermax