Tkinter действует странно на Python 3.6 - PullRequest
0 голосов
/ 12 января 2019

Я практиковал tkinter в python 3.6, используя spyder IDE на Ubuntu 18.04 LTS. У меня проблемы с этим, как:

1. Я не могу добавить виджет Текст.

# text area
textarea1 = ttk.Text(win).pack()

выход

AttributeError: module 'tkinter.ttk' has no attribute 'Text'

2.При попытке добавить изображение к метке выдается ошибка, но иногда это не совпадает с кодом.

logo = PhotoImage(file = "images/whiteFlames.png")
small_logo = logo.subsample(5,5)

label1 = ttk.Label(win, text = "Hi there,", image = small_logo)
label1.pack()

Выход

TclError: image "pyimage36" doesn't exist

3. То же самое, что метка, случалось и с кнопками, она тоже работает и не работает с тем же кодом.

Я попытался pip установить tkinter (в терминале), чтобы убедиться, что он переустанавливается, если проблема была с установкой, но вывод был:

Collecting tkinter
  Could not find a version that satisfies the requirement tkinter (from versions: )
No matching distribution found for tkinter

4.Я не могу изменить шрифт, и текст тоже выглядит странно.

Font not changing issue

from tkinter import *
from tkinter import ttk
import tkinter.font as font
win = Tk()
win.title("Bit Coin Trader")
win.config(bg = "grey")
win.geometry("300x300")
# section 1
shareLabel = ttk.Label(win, text = "Target Price($):")
shareLabel.config(background = 'grey', foreground = 'white', font = font.Font(family='Times'))
shareLabel.grid(row = 0, column = 0, sticky = 'W')

targetLabel = ttk.Label(win, text = "Target Price($):")
targetLabel.config(background = 'grey', foreground = 'white', font = font.Font(family='Arial'))
targetLabel.grid(row = 1, column = 0, sticky = 'W')
win.mainloop()

Пожалуйста, помогите мне с этим!

Минимальный код для выдачи изображения

from tkinter import *
from tkinter import ttk

win = Tk()

win.title("widgets")

# setting a size of 400x400 px
win.geometry("400x200")


logo = PhotoImage(file = "images/whiteFlames.png")
small_logo = logo.subsample(5,5)

label1 = ttk.Label(win, text = "Hi there,",image = small_logo)
label1.pack()

button1 = ttk.Button(win, text = "Click Me",image = small_logo)
button1.pack()
button1.config(command = onClick) # this adds action to button

win.mainloop()

Но это работает сейчас ... не знаю точную причину, но оно работает после того, как я обновил свой питон с 3.6.7 до 3.6.8

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