Python のプログレスバー / すぐに使えるウェブブラウザ

Python のプログレスバー / すぐに使えるウェブブラウザ

私はこの Web ブラウザを約 1 日間使用しており、ブラウザのメインの外観を希望どおりに設定しました。

メイン ウィンドウの下部に、ページの読み込みの進行状況を示す小さな進行状況バーを追加することにしました。進行状況バーは、クイックを使用して追加しました (インターフェイスで確認できるようにしました) が、ページの読み込み中に進行状況バーを機能させる方法がまったくわかりません。

これをどうやってやればいいのか、何かアイデアはありますか?

私のウェブブラウザのコードは次のとおりです

import gettext
from gettext import gettext as _
gettext.textdomain('dm-web-browser')

from gi.repository import Gtk, WebKit # pylint: disable=E0611
import logging
logger = logging.getLogger('dm_web_browser')

from dm_web_browser_lib import Window
from dm_web_browser.AboutDmWebBrowserDialog import AboutDmWebBrowserDialog
from dm_web_browser.PreferencesDmWebBrowserDialog import PreferencesDmWebBrowserDialog

# See dm_web_browser_lib.Window.py for more details about how this class works
class DmWebBrowserWindow(Window):
    __gtype_name__ = "DmWebBrowserWindow"

    def finish_initializing(self, builder): # pylint: disable=E1002
        """Set up the main window"""
        super(DmWebBrowserWindow, self).finish_initializing(builder)

        self.AboutDialog = AboutDmWebBrowserDialog
        self.PreferencesDialog = PreferencesDmWebBrowserDialog

        # Code for other initialization actions should be added here.
        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.urlentry = self.builder.get_object("urlentry")
        self.scrolledwindow = self.builder.get_object("scrolledwindow")
        self.toolbar = self.builder.get_object("toolbar")


        self.webview = WebKit.WebView()

        self.scrolledwindow.add(self.webview)
        self.webview.show()

    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()

ご覧のとおり、私は WebKit と WebView を Python ですばやく使用しています。

このプログレスバーを機能させるコードのアイデアがあれば、本当にありがたいです

これはプログレスバーを呼び出すために使用しているコードです:

fetcher = UrlFetchProgressBox("http://" + url)
    fetcher.connect("downloaded",self, on_urlentry_activate)
    fetcher.show()
    self.builder.get_object("vbox1").pack_start(fetcher,false,false)

これを整理するのを手伝ってください

答え1

私は進捗バー ウィジェットを使用していませんが、目的に応じて独自のウィジェットをすぐに用意しました。

from quickly.widgets import url_fetch_progressbar

チェックアウトコード使用にはquickly-widgetsパッケージをインストールする必要があります。デモ

関連情報