Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PYGTK使用的屏幕空间比预期的多_Python_Pygtk - Fatal编程技术网

Python PYGTK使用的屏幕空间比预期的多

Python PYGTK使用的屏幕空间比预期的多,python,pygtk,Python,Pygtk,我正在使用PYGTK编写一个非常简单的下载管理器,使用wGet和Python。一切都很好,但它占用了很多屏幕空间。。。 我的代码: 它会在右侧抛出大量未使用的空间。如何解决这个问题?通过“X”按钮关闭应用程序非常困难。您似乎正在创建一个包含2行6列的表,而我假设您正在创建6行2列的表-看一下,您会发现在构造函数中,行排在第一位 由于您已将homogeneous设置为True,因此该表将所有列设置为相同的宽度和高度(这就是homogeneous所做的),并且由于您要求设置6列,因此添加了许多相同宽

我正在使用PYGTK编写一个非常简单的下载管理器,使用wGet和Python。一切都很好,但它占用了很多屏幕空间。。。 我的代码:


它会在右侧抛出大量未使用的空间。如何解决这个问题?通过“X”按钮关闭应用程序非常困难。

您似乎正在创建一个包含2行6列的表,而我假设您正在创建6行2列的表-看一下,您会发现在构造函数中,行排在第一位

由于您已将
homogeneous
设置为
True
,因此该表将所有列设置为相同的宽度和高度(这就是
homogeneous
所做的),并且由于您要求设置6列,因此添加了许多相同宽度的空白列,这使您的窗口非常宽

将行更改为:

structure = gtk.Table(6, 2, True)
。。。这似乎更合理。那就是你想要的吗


就我个人而言,我建议创建一个代表该列的。当您需要全宽度的小部件时,您可以直接将它们放入这个容器中。如果需要一个包含多个小部件的行,可以创建一个来表示该行,将小部件添加到该行中,然后将
VBox
本身添加到
HBox
中。这种方法一开始可能看起来有点烦躁,但它允许GTK处理更多的布局本身,这通常会使您的应用程序更好地调整大小(只要您正确地提示每个小部件是否应该可扩展)。此外,如果以后添加更多小部件,
VBox
HBox
在这方面更灵活,则无需返回并更改行数和列数。所以总的来说,我总是发现这些东西容易得多,除非我真正想要的是一个固定的小部件网格(例如,如果我正在实施扫雷器)。

好的。我以为我收到了答案…非常感谢!我使用True是因为我遵循了教程,所有教程都使用True。。。好的,这意味着,表格是这样的:行,列。我以为是列,行。。。无论如何,谢谢。你解决了我的问题!不客气。只是说,使用
并没有什么错,
同质
作为
是可以的,只要这是您想要的-只是取决于您是否喜欢您的小部件扩展填充空间,这是您的决定。我只是想说,你可能希望在将来看看
HBox
VBox
,因为我个人觉得它们更容易。不管怎样,祝你好运!
structure = gtk.Table(6, 2, True)