как добавить домашнюю кнопку и вкладки в пользовательский веб-браузер в Ubuntu

Как вы кодируете в домашней кнопке для веб-браузера?

Я создаю веб-браузер в Ubuntu для использования в Ubuntu. Я использую смесь Glade, Python, Fast, WebKit и WebView

Я сделал почти все, и думал, что кнопка «Домой» будет хорошим прикосновением. У меня уже есть кнопка домой, просто нужно знать, как заставить ее работать.

для кнопок с вкладками я сделал это:

        self.webview = WebKit.WebView()
    self.scrolledwindow1.add(self, webview)
    self.scrolledwindow2.add(self, webview)
    self.scrolledwindow3.add(self, webview)
    self.webview.show()

способ, которым я установил окна с вкладками и прокручиваемое окно на поляне, выглядит следующим образом:

tab1 содержит scrolledwindow1 tab2 содержит scrolledwindow2 tab3 содержит scrolledwindow3

, когда я "быстро бегу", я получаю это сообщение об ошибке:

/usr/lib/python2.7/dist-packages/gi/overrides/Gtk.py:391: Warning: g_object_set_property: construct property "type" for object `Window' can't be set after construction

Gtk.Window. init (self, type = type, ** kwds) Traceback (последний вызов был последним): файл "bin / dm-test", строка 33, в файле dm_test.main () "/ home / matty / dm-test / dm_test / init .py ", строка 33, в главном окне = Файл DmTestWindow.DmTestWindow ()" /home/matty/dm-test/dm_test_lib/Window.py ", строка 35, в new new_object.finish_initializing (строитель ) Файл "/home/matty/dm-test/dm_test/DmTestWindow.py", строка 55, в файле finish_initializing self.scrolledwindow1.add (self, webview) AttributeError: Объект DmTestWindow не имеет атрибута scrolledwindow1

[ 1111] Теперь я не уверен, правильно ли я вызываю вкладки и окно прокрутки или нет. Ниже приведен полный код, который я написал для того, чтобы это работало (работал до идеи окна с вкладками)

# Code for other initialization actions should be added here.

#this builds the tool back and all the buttons(defines)

    self.toolbar = self.builder.get_object("toolbar")
    self.backbutton = self.builder.get_object("backbutton")
    self.forwardbutton = self.builder.get_object("forwardbutton")
    self.refreshbutton = self.builder.get_object("refreshbutton")
    self.stopbutton = self.builder.get_object("stopbutton")
    self.homebutton = self.builder.get_object("homebutton")
    self.urlentry = self.builder.get_object("urlentry")
    self.webview = WebKit.WebView()
    self.scrolledwindow1.add(self, webview)
    self.scrolledwindow2.add(self, webview)
    self.scrolledwindow3.add(self, webview)
    self.webview.show()




#This sets the buttons in tool bar to work

def on_backbutton_clicked(self, widget):
    self.webview.go_back()

def on_forwardbutton_clicked(self, widget):
    self.webview.go_forward()

def on_refreshbutton_clicked(self, widget):
    self.webview.reload()

def on_stopbutton_clicked(self, widget):
    self.webview.stop_loading()

def on_homebutton_clicked(self, widget):
    self.webview.open(DEFAULT_URL)

def on_url_entry_activate(self, widget):
    url = widget.get_text()
    self.webview.open("http://" + url)
    print url

есть у кого-нибудь какие-либо идеи, как правильно настроить окна с вкладками (хотите, чтобы это выглядело как chromium) код для его установки также будет полезен или пример кода, который мне нужно будет использовать, и объяснение того, как его использовать, если это возможно.

заранее большое спасибо

0
задан 20 April 2013 в 18:41

1 ответ

Кнопка «Домой» очень проста, учитывая, что у вас уже есть кнопка и обработчик, созданные с помощью Glade:

# You'll probably have this laying around somewhere already
DEFAULT_URL = "http://www.ubuntu.com"

# class
    # init etc

    def on_home_clicked(self, widget):
        self.web_view.open(DEFAULT_URL)

Создание вкладок в вашем браузере немного сложнее. Вы должны создать GtkNotebook внутри своего окна и упаковать каждый просмотр браузера в отдельную страницу.

0
ответ дан 20 April 2013 в 18:41

Другие вопросы по тегам:

Похожие вопросы: