如何在Kivy中创建超链接按钮

时间:2019-08-26 16:01:22

标签: python url hyperlink kivy

我正在创建一个具有指向不同网站的大量链接的应用程序。 因此,我需要一个可以帮助我有效完成此任务的课程。 我制作了一些类,将特殊按钮链接到特殊网站,但是要为应用程序中的每个链接创建类并不是简单的方法。 我已经做到了:

main.py:

import webbrowser
from kivy.uix.button import Button
from kivy.uix.behaviors import ButtonBehavior
from kivy.uix.image import Image

class WebsiteButton(ButtonBehavior, Image):
    def on_release(self):
        webbrowser.open('https://www.website.no')

为此,我将其写入我的kv文件中,该文件可以正常工作: 我只需要指定图片即可。

WebsiteButton:
    source: "image.png"

现在,我正在尝试创建一个类,让我只为该类命名并输入要打开该应用程序的网站的网址。它可以在应用程序内部,也可以只打开带有请求URL的浏览器。我不需要图像,只需按钮的标签。

任何建议?

亲切的问候,克里斯蒂安·鲁格

导入网络浏览器

我已经尝试过:

class OpenUrl(ButtonBehavior, str):
    def on_release(self):
        webbrowser.open()

在我的kv文件中:

GridLayout:
    cols: 1
    size: root.width, root.height

    Label:
        text: "Link to Google':"

    Button:
        text: "Guds rike"
        on_release:
            OpenUrl("https://www.google.com")

但是当我按下按钮时,应用程序关闭。 终端中的消息结尾为:NameError:未定义名称'OpenUrl'。

请参见上面的代码示例。

我希望该应用程序在网络浏览器打开网址时保持打开/运行状态。

0 个答案:

没有答案
相关问题