@CripplingDepression

Как вставить картинку?

Не могу решить проблему вставки картинки в коде:

import random
from PIL import Image, ImageDraw
from tkinter import *

root = Tk()
root.title("Проект Олега")
root.geometry("500x500+700+250")

def new_window1(event):
    window1 = Toplevel(root.deiconify())
    window1.geometry("500x500+700+250")
    image = Image.open(ТаблицаМенделевия.jpeg)
    draw = ImageDraw.Draw(ТаблицаМенделевия.jpeg)
    width = image.size[0]
    height = image.size[1]
    pix = image.load()

def new_window4(event):
    window4 = Toplevel(root.deiconify())
    window4.geometry("500x500+700+250")
    btn4 = Button(window4, text="Начать", bd="7")
    btn4.bind('<Button->', new_window1)
    btn4.pack()
    btn5 = Button(window4, text="Инфо", bd="7")
    btn5.bind('<Button->', new_window2)
    btn5.pack()
    btn5 = Button(window4, text="Выйти", bd="7")
    btn5.bind('<Button->', new_window3)
    btn5.pack()

def new_window2(event):
    window2 = Toplevel(root.deiconify())
    window2.geometry("500x500+700+250")
    btn10 = Button(window2, text="Назад в меню")
    btn10.bind('<Button->', new_window4)
    btn10.pack()

def new_window3(event):
    window3 = Toplevel(root.deiconify())
    window3.geometry("500x500+700+250")
    text1 = "Чтобы выйти из игры, \nзакройте основное (самое первое) окно.\n Спасибо, что сыграли в эту игру!"
    l1=Label(window3, text=text1, justify=CENTER)
    l1.pack()

label1 = Label(root, text="Игра по изучению электронов")
label1.pack()

btn1 = Button(root, text="Начать", bd="7", background="#FF0000", activebackground="#8B0000", activeforeground="#FFFFFF")
btn1.bind('<Button->', new_window1)
btn1.pack()

btn2 = Button(root, text="Инфо", bd="7", background="#008000", activebackground="#006400", activeforeground="#FFFFFF")
btn2.bind('<Button->', new_window2)
btn2.pack()

btn3 = Button(root, text="Выйти", bd="7", background="#0000FF", activebackground="#00008B", activeforeground="#FFFFFF")
btn3.bind('<Button->', new_window3)
btn3.pack()

root.mainloop()
  • Вопрос задан
  • 273 просмотра
Решения вопроса 1
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
Отличный пример, почему не стоит импортировать все из модуля через звездочку:
from tkinter import *
Вот здесь:
image = Image.open(ТаблицаМенделевия.jpeg)
используется класс Image из tkinter, у которого нет метода open(). Также имя файла в метод open передается в виде строки, заключенной в одинарные или двойные кавычки.
В итоге, у вас получилась каша из классов и методов, с одинаковыми именами, но из разных библиотек. Снесите код полностью, и перепишите программу с нуля - так будет проще.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы