Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Implement pywebview on kivy

Tags:

python

kivy

I implemented pywebview on kivy. After clicking the button it will create the window, but after closing the window and click the button again, the window did not created.

How can I solve this problem ?

Below is my code :

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
import threading
import webview
class LoginScreen(BoxLayout):    
    def __init__(self, **kwargs):
        super(LoginScreen, self).__init__(**kwargs)
        self.btn1 = self.add_widget(Button(text='Web',on_press=self.on_web))    
    def on_web(self,instance):
        url='http://www.google.com'
        print("Im open windows")
        webview.create_window('My Web App', url=url,debug=True)

class MyApp(App):    
    def build(self):
        return LoginScreen()
if __name__ == '__main__':
    MyApp().run()
like image 995
Wenhao Hong Avatar asked Feb 17 '26 16:02

Wenhao Hong


1 Answers

In the following lines, remove the debug=True from the webview.create_window. Then add webview.start(debug=True) per https://github.com/r0x0r/pywebview and https://pywebview.flowrl.com/examples/debug.html

webview.create_window('My Web App', url=url)
webview.start(debug=True) 

Also, the following are the params for the create_window function, notice that there is no debug per https://pypi.org/project/pywebview/0.5/:

webview.create_window(title, url, width=800, height=600, resizable=True, fullscreen=False)

The above works for me (Python 3, Kivy 1.11, Windows10) after the edit and test of your code.

like image 59
user3850351 Avatar answered Feb 20 '26 07:02

user3850351



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!