【发布时间】:2017-02-21 15:37:42
【问题描述】:
我正在 Glade (GTK# 3.20 + C#) 中对应用程序界面进行原型设计,并通过 CssProvider 使用我的 CSS 样式。我有这个:
问题是我使用 GTKLayout 作为我的主要容器,我认为这是创建 UI 的错误方法。我正在使用这种类型的容器,因为它使我能够在原型设计期间在 Glade 中根据需要调整和拖动小部件的大小。不好的是,当我调整它的大小时,小部件卡在应用程序窗口的左上角。我为窗口设置了最小尺寸,但我希望 UI 在窗口尺寸增加时能够自适应。你可以看到下面的问题:
我尝试使用 Box 容器、Grid 容器等创建这个 UI。但我总是遇到同样的问题:所有小部件的大小都是固定的(在原型设计期间在 Glade 中),看起来不可能用它创建复杂的 UI。
所以,我希望一些有经验的人向我解释一些事情:
- 如果我以错误的方式使用 GTKLayout,我应该如何组织我的小部件(在哪些容器中)以便能够按照我想要的方式调整它们的大小(在 Glade 中)并具有与我的屏幕截图相同的外观。李>
- 如果使用 GTKLayout 不是一个坏习惯,我应该如何解决对齐问题来制作自适应 UI?
- 如果使用 GTKLayout 是一种不好的做法,我应该如何制作自适应 UI 以及使用哪些容器?
这是窗口的结构(是的,我正在使用 Label 小部件来创建颜色面板):
【问题讨论】: