Как сделать приложение python gtk «закрепленным» поверх других приложений? - PullRequest
0 голосов
/ 03 декабря 2011

Я бы хотел, чтобы это приложение Python GTK было «закреплено» вверху экрана.Есть ли способ отключить кнопки «Закрыть», «Развернуть» и «Свернуть» и оставить их поверх других приложений?

#!/usr/bin/env python
import sys
import gtk
import webkit
DEFAULT_URL = 'http://webpage.com'
class SimpleBrowser:
def __init__(self):
    self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
    self.window.connect('delete_event', self.close_application)
    self.window.set_default_size(1024, 125)
    vbox = gtk.VBox(spacing=5)
    vbox.set_border_width(5)
    self.txt_url = gtk.Entry()
    self.txt_url.connect('activate', self._txt_url_activate)
    self.scrolled_window = gtk.ScrolledWindow()
    self.webview = webkit.WebView()
    self.scrolled_window.add(self.webview)
    vbox.pack_start(self.scrolled_window, fill=True, expand=True)
    self.window.add(vbox)
def _txt_url_activate(self, entry):
    self._load(entry.get_text())
def _load(self, url):
    self.webview.open(url)
def open(self, url):
    self.txt_url.set_text(url)
    self.window.set_title('%s' % url)
    self._load(url)
def show(self):
    self.window.show_all()
def close_application(self, widget, event, data=None):
    gtk.main_quit()
if __name__ == '__main__':
if len(sys.argv) > 1:
    url = sys.argv[1]
else:
    url = DEFAULT_URL
gtk.gdk.threads_init()
browser = SimpleBrowser()
browser.open(url)
browser.show()
gtk.main()

1 Ответ

2 голосов
/ 03 декабря 2011

Закрыть, развернуть и свернуть на панели инструментов являются частью оформления оконного менеджера. Если вы хотите избавиться от них, отключите декорации, используя gtk.Window.set_decorated и установив для настроек декорации значение false. Что касается всегда сверху, вы можете попробовать gtk.Window.set_keep_above. Это снова является «подсказкой» для оконного менеджера. Существует вероятность, что ваш оконный менеджер может проигнорировать это. Этот вопрос обсуждает окно "всегда сверху", а этот вопрос обсуждает больше о X11 и подсказке диспетчера окон, чтобы установить окно как "всегда сверху".
Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...