GUI布局 - 如何?

时间:2010-06-26 00:55:29

标签: python grid tcl rad

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


感谢回复,澄清 - 我想创建一个定义'表单'的通用文本文件,然后可以使用此表单文件生成本机(ish)GUI表单(例如tk)以及HTML表单

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

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

1 个答案:

答案 0 :(得分:3)

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

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

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

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