Python – GTK+ 3 中的 HeaderBar
A Gtk.HeaderBar
与水平Gtk.Box
相同,它允许将子项放置在开始或结束处并显示标题。 GTK+ 支持客户端装饰,因此我们可以使用Gtk.HeaderBar
代替标题栏。标题将相对于框的宽度居中。 Gtk.HeaderBar
通常位于窗口顶部,应该包含影响下面内容的常用控件。它们还提供对窗口控件的访问,包括关闭窗口按钮和窗口菜单。
请按照以下步骤操作:
- 导入 GTK+ 3 模块。
- 创建主窗口。
- 创建标题栏。
- 创建按钮。
- 创建盒子。
例子:
import gi
# Since a system can have multiple versions
# of GTK + installed, we want to make
# sure that we are importing GTK + 3.
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk, Gio
class HeaderBarWindow(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title ="GfG")
self.set_border_width(10)
self.set_default_size(400, 400)
# Create HeaderBar.
hb = Gtk.HeaderBar()
hb.set_show_close_button(True)
hb.props.title = "Geeks for Geeks"
self.set_titlebar(hb)
# Create Button
button = Gtk.Button()
icon = Gio.ThemedIcon(name ="mail-send-receive-symbolic")
image = Gtk.Image.new_from_gicon(icon, Gtk.IconSize.BUTTON)
button.add(image)
hb.pack_end(button)
# Create Box
box = Gtk.Box(orientation = Gtk.Orientation.HORIZONTAL)
Gtk.StyleContext.add_class(box.get_style_context(), "linked")
button = Gtk.Button()
button.add(Gtk.Arrow(Gtk.ArrowType.LEFT, Gtk.ShadowType.NONE))
box.add(button)
hb.pack_start(box)
self.add(Gtk.TextView())
win = HeaderBarWindow()
win.connect("destroy", Gtk.main_quit)
# Display the window.
win.show_all()
# Start the GTK + processing loop
Gtk.main()
输出 :
在评论中写代码?请使用 ide.geeksforgeeks.org,生成链接并在此处分享链接。