58

有谁知道一个 GUI 设计应用程序,它可以让您选择/拖放小部件,然后使用grid几何管理器通过适当的 Tkinter 调用和排列将该布局转换为 Python 代码?到目前为止,我已经找到了一些我最终可能会使用的非常好的选项,但它们使用其中一个packplace代替生成代码。

=========

编辑:请注意,这不是寻求“建议”本身,而是事实调查。我在问这样的应用程序是否存在。

=====

在你说之前:是的,我知道 Tkinter 很容易学习,是的,我已经找到了多个在线资源来帮助我这样做,而且我已经在路上了。这不是要避免学习的努力,而是要使用正确的工具来完成工作。我很久以前就发现,当项目超过一定规模时,那些用于编码程序逻辑的拖放小部件环境太笨拙且难以管理——对于更大的东西,构建和维护逻辑更容易当它是纯文本时。最近,我发现设计 GUI 的情况正好相反。编写文本在一定程度上是可行的,但是当您有一个包含 30 或 40 个小部件的主窗口,以及几个具有相似复杂性的侧窗口时,

4

3 回答 3

46

除了其他答案中已经给出的选项外,还有一个当前更活跃、最近和开源的项目,名为pygubu.

这是作者取自 github 存储库的第一个描述:

Pygubu 是一个 RAD 工具,可以快速轻松地为 python tkinter 模块开发用户界面。

设计的用户界面保存为 XML,通过使用 pygubu 构建器,这些可以由应用程序根据需要动态加载。Pygubu 的灵感来自 Glade。


Pygubu hello world 程序是一个介绍性视频,解释如何使用Pygubu.

以下pygubu是 OS X Yosemite 10.10.2 上最新版本设计器的界面图像:

在此处输入图像描述

我一定会试一试,并为它的发展做出贡献。

于 2015-03-14T20:39:13.243 回答
30

你有VisualTkinter,也称为 Visual Python。发展似乎并不活跃。你有sourceforgegooglecode网站。网站在这里

另一方面,您的PAGE看起来很活跃,并且可以在 python 2.7 和 py3k 中使用

正如您在评论中指出的那样,这些都没有使用grid几何。据我所知,唯一这样做的 GUI 构建器可能是Komodo Pro GUI Builder,它已停产并在 ca 中开源。2007. 代码位于SpecTcl 存储库中。

在win7上似乎可以正常安装,虽然还没有使用过。这是我电脑的截图:

在此处输入图像描述

顺便说一句,Rapyd Tk还计划实施网格几何,因为它的文档中说它还没有准备好。不幸的是,它似乎“几乎”被放弃了。

于 2013-01-03T15:53:31.920 回答
29

恕我直言,使用网格进行布局的最佳工具是方格纸和铅笔。我知道你要求某种类型的程序,但它确实有效。我已经做了几十年的 Tk 编程,所以布局对我来说很容易,但是当我有一个复杂的 GUI 时,我仍然会打破方格纸。

要考虑的另一件事是:Tkinter 几何管理器的真正强大之处在于将它们一起使用*。如果您打算只使用网格或只使用包装,那么您做错了。相反,首先在纸上设计您的 GUI,然后寻找最能由其中一种解决的模式。Pack 是某些类型布局的正确选择,而 grid 是其他类型的正确选择。对于极少数的问题,地点是正确的选择。不要将您的想法限制在仅使用一种几何管理器。

* 使用这两种几何管理器的唯一警告是每个容器只能使用一个(容器可以是任何小部件,但通常是框架)。

于 2013-01-03T17:34:04.460 回答