使tkinter提示继承父窗口的图标

2024-04-27 04:15:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在用tkinter编写一个程序,并成功地使用如下代码为我的程序使用彩色图标:

from tkinter import *
tk = Tk()
root.tk.call('wm', 'iconbitmap', self._w, '-default', 'iconfile.ico')

但是,当我创建一个简单的对话框时,它有默认的tkinter图标。我已经尝试将父窗口设置为我的主窗口,但图标仍然是默认的。在

如何将图标设置为不是默认图标?在


Tags: 代码fromimportself程序defaulttkinterroot
1条回答
网友
1楼 · 发布于 2024-04-27 04:15:36

从另一个网站的用户那里得到了答案:

它不是类中可配置的选项。您需要创建一个子类来设置图标:

class StringDialog(simpledialog._QueryString):
    def body(self, master):
        super().body(master)
        self.iconbitmap('icon.ico')

    def ask_string(title, prompt, **kargs):
        d = StringDialog(title, prompt, **kargs)
        return d.result

如果需要这些版本,还需要将_QueryFloat和_QueryInteger子类化。(这些类应该是私有的,因此您可能需要在以后的更新中修复此问题。)

相关问题 更多 >