gtk3 Цвет строки заголовка GtkWindow - PullRequest
0 голосов
/ 08 января 2012

Используя gtk3, как я могу изменить цвет заголовка GtkWindow по умолчанию? Будет ли это включать GtkStyleContext? Я использовал только GtkCssProvider.

Ответы [ 2 ]

2 голосов
/ 29 ноября 2018

Ты можешь сделать это ... (по крайней мере, в Linux) Что происходит, так это то, что ваше окно не декорировано, а затем «украшено» строкой заголовка (которая имеет кровавый «show_close_button», поэтому я предполагаю, что это целевое использование)

class base_ui(Gtk.Window):

def __init__(self):

    # initializing self ( the window )
    Gtk.Window.__init__(self, title="window title")

    self.set_border_width(1)

    self.set_default_size(800, 600)

    # Create the header bar
    hb = Gtk.HeaderBar()
    # This is the id of the header bar to be used in the css file
    hb.set_name("mw_hb")

    # we can even set a close button ... 
    # you can add the other buttons as well, but have to do it yourself
    hb.set_show_close_button(True)
    # the effective text in the titlebar ( the window title )
    # is props.title
    hb.props.title = "win title"
    # and here comes the sun - we set our headerbar as the new titlebar.
    # Bazinga
    self.set_titlebar(hb)
2 голосов
/ 08 января 2012

Вы не можете изменить цвет заголовка с GTK. Заголовок нарисован оконным менеджером, и GTK ничего не «знает» об этом. Вы можете общаться с оконным менеджером только через «подсказки», например, должно ли окно иметь заголовок или какая строка должна отображаться там, но оконный менеджер может их игнорировать.

...