Python Tkinter - небольшое окно всплывает на мгновение перед главным окном - PullRequest
1 голос
/ 28 апреля 2019

Я использую tkinter для создания простого окна. Когда я запускаю python mainwindow.py, небольшое окно всплывает на короткое время и закрывается прямо перед основным окном (в основном в верхнем левом углу экрана). Вот GIF, демонстрирующий это:

wtf

Вот код, который я использовал (mainwindow.py):

import tkinter as tk


def center(win, width, height):
    win.update_idletasks()
    x = (win.winfo_screenwidth() // 2) - (width // 2)
    y = (win.winfo_screenheight() // 2) - (height // 2)
    win.geometry(f'{width}x{height}+{x}+{y}')


def main():
    width = 500
    height = 500

    main_window = tk.Tk()
    main_window.title('7Watchlist DataGrabber')
    main_window.iconbitmap(main_window, r'images\icon.ico')
    center(main_window, width, height)
    main_window.resizable(False, False)

    main_window.mainloop()


if __name__ == "__main__":
    main()

Существует точно такой же вопрос с принятым ответом. На этом OP говорит в комментариях:

Кажется, я наконец-то понял корень проблемы. [...] Поэтому вместо моего исходного кода app.iconbitmap(r"C:\Program Files (x86)\Notepad++\Files\journalicon.ico") вам нужно сделать app.iconbitmap(app, r"C:\Program Files (x86)\Notepad++\Files\journalicon.ico") [...]

И принятый ответ , по-видимому, указывает на то же

  • Заменить app.iconbitmap(r'address') на app.iconbitmap(app, r'address').

Но мой код уже использует iconbitmap в этом формате. Итак, мой вопрос: как я могу избавиться от этого маленького окна?

1 Ответ

0 голосов
/ 28 апреля 2019

Я только что удалил bitmap = main_window из main_window.wm_iconbitmap(bitmap=None, default=None) и похоже, что это решило проблему, я только установил параметр по умолчанию. Хотя я на Mac OS и iconbitmap не работает должным образом, как значок не отображается.

Также я запустил его с win.update_idletasks() и до сих пор не вижу маленькое окно, но вы можете попробовать, удалив его.

enter image description here

Надеюсь, это помогло вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...