0

我最近一直在与一些 RAD gui 构建器合作。我绝对鄙视 CSS(骆驼是由委员会等设计的马)包装管理器(java/tk)使用什么算法。我用过的大多数 GUI 工具包都有绝对定位的替代方案,很抱歉模棱两可,但你如何开始考虑用 X 语言实现包装管理器。


感谢您的回复,澄清 - 我想创建一个定义“表单”的通用文本文件,然后该表单文件可用于生成本机(ish)GUI表单(例如tk)和HTML表单。

我正在寻找的是有关如何实现基于网格的打包管理器的一些指示,以便我可以根据某种形式的既定逻辑来制定我的通用文本文件。

如果这对您没有意义,那么您理解我:)。一些注意事项
1. XML 与斑马和骆驼生活在同一个马厩中,但与马不同。
2. 考虑轻量级标记语言(Markdown/ReStructuredText),但对于简单的形式。
3.这可能已经实现了,你知道在哪里吗?
4. 是的,我用谷歌搜索过(很多次),答案不在 G1 和 o2
之间

4

1 回答 1

3

Tk 有三种方法。一种是绝对定位,另外两种叫做“网格”和“包”。

网格就是它听起来的样子:您将小部件布置在网格中。有用于跨越行和列、扩展(或不扩展)以填充单元格、指定可以增长的行或列等选项。您可以使用网格几何管理器完成大约 90% 的所有布局问题。

另一个管理器是“pack”,它通过请求将小部件放置在一侧或另一侧(顶部、底部、左侧、右侧)来工作。它非常强大,并且通过使用嵌套容器(在 tk 中称为框架),您也可以完成几乎任何布局。当您将东西堆叠在一个方向上时,Pack 特别方便,例如工具栏的水平方向,主应用程序的垂直方向(工具栏、主区域、状态栏)。

grid 和 pack 都非常强大且易于使用,它们之间可以解决您遇到的任何布局问题。这让我想知道为什么 Java 和 wxPython 有这么多如此复杂的几何管理器,而它可能只用不超过三个。

于 2010-06-26T01:57:01.023 回答