是否可以更改 Kivy 应用程序任务栏图标?

Posted

技术标签:

【中文标题】是否可以更改 Kivy 应用程序任务栏图标?【英文标题】:Is it possible to change a Kivy app taskbar icon? 【发布时间】:2019-04-04 16:42:59 【问题描述】:

我有一个 kivy 应用,代码如下:

class ComicNotificatorApp(App):

    def build(self):

        Window.size = (300, 300)
        self.title = 'Comics Notificator'
        self.icon = 'assets/icon.png'
        return Label(text=to_display)

我想更改应用的任务栏图标

当我使用它时,如何更改窗口的大小以自动适应标签的大小,而不是手动设置?

谢谢!

【问题讨论】:

【参考方案1】:

*** question

kivy doc 供您参考 kivy 配置对象

我只知道如何更改窗口的图标,而不知道如何更改任务栏的图标

...

class MyKivyApp(App):

    def build(self):
        self.title = 'window's title'
        self.icon = <icon>: str  <----

...

任务栏一个也许你可以在打包的时候改变它

如何更改窗口大小以自动适应标签大小

也许您可以尝试使用 kivy.config.Config.set() ,如果我理解正确,您想设置窗口大小 == 标签大小?如果是则先设置标签的大小,然后使用kivy.config.Config.set('graphics', 'width', &lt;size&gt;: str)kivy.config.Config.set('graphics', 'height', &lt;size&gt;: str)

# I assume you won't change the label size after starting the kivy screen ?
import kivy
kivy.config.Config.set('graphics', 'width', <label_width>: str)
kivy.config.Config.set('graphics', 'width', <label_height>: str)

...

因为配置必须在一开始就设置,在创建kivy窗口之前 例如

import kivy
# set config here
# import another stuff

希望得到帮助:)

【讨论】:

【参考方案2】:

有点晚了,但对于您的主要问题Is it possible to change a kivy app taskbar icon,不,如果您将应用程序作为脚本运行,而不是某种可执行文件,则无法更改任务栏图标。但是,当作为可执行文件运行时,任务栏图标将自动与您的窗口图标同步(通过使用 pyinstaller 或 py2exe 打包您的应用程序,任何类似的东西都可以工作)

【讨论】:

以上是关于是否可以更改 Kivy 应用程序任务栏图标?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用系统托盘/任务栏图标制作跨平台 Kivy 应用程序,即使应用程序没有聚焦/处于任务栏模式,它也会检测键盘输入

更改固定的任务栏图标(Windows 7)

如何更改将在任务栏上显示的图标

修改 Windows 10 UWP 应用任务栏图标

MFC生成如何修改任务栏图标

windows基本设置 Windows 系统的几个基本设置