【问题标题】:overlapping widgets gtk重叠的小部件 gtk
【发布时间】:2010-11-15 11:24:20
【问题描述】:

如何让小部件相互重叠。

最下面应该是图片,上面的可以是按钮等其他小部件。

【问题讨论】:

    标签: gtk


    【解决方案1】:

    子类化较大的(父)小部件。在create() 方法或构造函数中,将layout(或container)小部件添加到父小部件,然后将其他小部件插入到容器中。现在威胁这个新的子类,就好像它是它的超类的一个单一但专门的版本。

    Window 是父窗口小部件的示例,而 Fixed 是示例容器。一个孩子可以是一个EventBox,包含一个Image。所有这些的组合是一个新的窗口对象,其中包含可以点击的图片。

    对于带有像素图背景和按钮的窗口标题栏外观,请尝试使用WindowImageFixed 容器来保存按钮。 FixedImage 应该能够重叠,因为Fixed 是透明的,而Image 没有Window

    如果确实需要Buttons,请查看GTK Containers 列表中的按钮框工具栏。可以为其中之一添加Image 背景。

    另一种方法涉及对齐小部件(来自同一个列表)。它指定较小的小部件按比例放置和调整大小。

    我假设,OOP,但如果不是,只需从一个函数组织小部件的创建。我在 Haskell(Gtk2Hs) 和 Guile Gnome 平台(有和没有 OOP)中制作了功能性复合小部件

    【讨论】:

    • 感谢您提及Fixed
    猜你喜欢
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 2014-03-12
    • 2021-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多