Ткинтер не распознается в Python 3.7 - PullRequest
0 голосов
/ 15 февраля 2019

Я использую Python 3.7, и, насколько я знаю, он уже поставляется с tkinter.

Строка import tkinter as tk вызывает в моем IntelliJ IDEA предупреждение:

"Pythonверсия 2.7 не имеет модуля tkinter "

В разделе | Предпочтения -> Проект: 'имя проекта' -> Интерпретатор проекта |, явно выбрана версия 3.7.

На практике этот код:

import tkinter as tk

root = tk.Tk()

root.title("mein GUI")

root.resizable(False, False)
w = 500  # width for the Tk root
h = 500  # height for the Tk root

sw = root.winfo_screenwidth()
sh = root.winfo_screenheight()

x = (sw / 2) - (w / 2)
y = (sh / 2) - (h / 2)

root.geometry('%dx%d+%d+%d' % (w, h, x, y))
print("test")

запускается, печатает «test» и не выдает исключение, но окно не появляется.


Я также хорошо знаю, что Tkinter используется для версий Pythonдо 3.0 и tkinter для версий, равных или выше 3.0

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019
import tkinter as tk

root = tk.Tk()

root.title("mein GUI")

root.resizable(False, False)
w = 500  # width for the Tk root
h = 500  # height for the Tk root

sw = root.winfo_screenwidth()
sh = root.winfo_screenheight()

x = (sw / 2) - (w / 2)
y = (sh / 2) - (h / 2)

root.geometry('%dx%d+%d+%d' % (w, h, x, y))
print("test")
root.mainloop()

Добавьте root.mainloop () в конец вашего кода, и ваше окно появится

0 голосов
/ 15 февраля 2019

Вам нужно добавить root.mainloop() в конце вашего кода, чтобы показать окно.Это может быть косвенный дубликат этого вопроса , однако в вашем случае ваш код просто нуждается в этом в конце, и это сработало для меня.

import tkinter as tk

root = tk.Tk()

root.title("mein GUI")

root.resizable(False, False)
w = 500  # width for the Tk root
h = 500  # height for the Tk root

sw = root.winfo_screenwidth()
sh = root.winfo_screenheight()

x = (sw / 2) - (w / 2)
y = (sh / 2) - (h / 2)

root.geometry('%dx%d+%d+%d' % (w, h, x, y))
print("test")
root.mainloop()

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