Форум программистов, компьютерный форум, киберфорум
Python: Tkinter
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 02.05.2023
Сообщений: 2

Остается след после удаления label

05.05.2023, 22:25. Показов 746. Ответов 0

Студворк — интернет-сервис помощи студентам
Здравствуйте, пишу задание "Написать программу, которая вводит номер некоторого года нашей эры и
выводит его название по старо японскому календарю на экране в поле
соответствующего цвета."
Возникла проблема, когда я удаляю(.destroy) лейбл у меня остается его кусочек. Также ещё почему-то повторно не вызывается лейбл, который отвечает за название года.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
import math as m
from tkinter import *
from tkinter import font
from PIL import Image,ImageTk
 
 
def japfun():
    global LWarn, LWarn2
    LWarn = Label(win, text = '')
    LWarn2 = Label(win,text = '')
    user_year = entry_year.get()
    try:
        user_year = int(user_year)
    except ValueError:
        LWarn = Label(win, text="Вводите только числа(целочисленные)", font=('Calibri', 20), fg='Red')
        LWarn.place(x=120, y=400)
    k = 0
    if type(user_year) == int and user_year < 0:
        if k==0:
            LWarn2 = Label(win, text="Введите положительное число", font=('Calibri', 20), fg='Red')
            LWarn2.place(x=170, y = 440)
            k+=1
    if type(user_year) == int and user_year>0:
        LWarn2.destroy()
        LWarn.destroy()
        start = 1984
        usl.destroy()
        colors = ['Green', 'Green', 'Red', 'Red', 'Yellow', 'Yellow', 'White', 'White', 'Black', 'Black']
        animals = ['Крыса', 'Корова', 'Тигр', 'Заяц', 'Дракон', 'Змея', 'Лошадь', 'Овца', 'Обезьяна', 'Курица', 'Собака',
                   'Свинья']
        animalspng = ['Rat.png', 'Bull.png', 'Tiger.png', 'Rabbit.png', 'Dragon.png', 'Snake.png', 'Horse.png', 'Sheep.png', 'Monkey.png', 'Rooster.png', 'Dog.png',
                   'Pig.png']
        cyclestart = user_year - start
        if cyclestart > 0:
            if cyclestart > 60:
                cyclestart -= cyclestart // 60 * 60
            copystart = cyclestart
            if copystart // 10 > 0:
                copystart -= 10 * (copystart // 10)
            if cyclestart // 12 > 0:
                cyclestart -= 12 * (cyclestart // 12)
 
        else:
            cyclestart = abs(cyclestart)
            cycles_years = 60 * m.ceil(cyclestart / 60)
            start -= cycles_years
            cyclestart = user_year - start
            if cyclestart > 60:
                cyclestart -= cyclestart // 60 * 60
            copystart = cyclestart
            if copystart // 10 > 0:
                copystart -= 10 * (copystart // 10)
            if cyclestart // 12 > 0:
                cyclestart -= 12 * (cyclestart // 12)
 
        framecoords.config(bd=0, bg=colors[copystart])
        frame_zaliv = Frame(bd=0, bg=colors[copystart])
        frame_zaliv.place(x=300, y=380, height=80, width=120)
        font2 = font.Font(family='Calibri', size=20, weight='bold')
        Label3 = Label(win, text='', font=font2, fg='MediumOrchid3', bg=colors[copystart])
        Label3['text'] = animals[cyclestart]
        Label3.pack(side=BOTTOM,pady = 100)
        #Фото животного года
        img2 = Image.open(animalspng[cyclestart])
        img3 = img2.resize((250, 250), Image.LANCZOS)
        global an_img
        an_img = ImageTk.PhotoImage(img3)
        screen_animal = Label(image=an_img)
        screen_animal.place(x = 20, y = 275)
        #Фото всех животных по кругу
        img4 = Image.open('cycleyears.png')
        img5 = img4.resize((250, 250), Image.LANCZOS)
        global cycle_img
        cycle_img = ImageTk.PhotoImage(img5)
        screen_cycle = Label(image=cycle_img)
        screen_cycle.place(x=430, y=275)
 
 
 
win = Tk()
win.title("задачка")
win.geometry("700x550")
win.config(bg="light salmon")
img = PhotoImage(file="task.png")
labelphoto = Label(image=img)
labelphoto.pack()
framecoords = Frame(bd=0, bg='light salmon')
framecoords.place(x=0, y=250, height=300, width=700)
usl = Label(win, text='Введите год, о котором хотите узнать:', font=('Calibri', 20))
usl.place(x=135, y=230)
entry_year = Entry(win, font=('Calibri', 20))
entry_year.place(x=320, y=276, width=70, height=35)
button1 = Button(text='Подтвердить', command=japfun)
button1.place(x=273, y=330)
font1 = font.Font(family='Calibri', size=15, weight="bold")
button1.config(bg='cyan2', width=15, height=1, font=font1)
 
mainloop()
Миниатюры
Остается след после удаления label  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.05.2023, 22:25
Ответы с готовыми решениями:

Как сделать, чтобы при наведении курсором на label, высвечивалась подсказка, в виде другого label?
КАК СДЕЛАТЬ ЧТОБЫ ПРИ НАВЕДЕНИИ МЫШЬЮ НА ВИДЖЕТ LABEL У МЕНЯ В ОПРЕДЕЛЕННОМ ЗАГАСАЛСЯ ДРУГОЙ LABEL...

Окно остается черным
всем доброго времени суток, изучаю kivy, возникла такая проблема: при запуске окно остается черным,...

В label отображается только последняя запись из цикла
Добрый вечер! Пытаюсь написать небольшое приложение для проверки доступности сайта по HTTP В...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.05.2023, 22:25
Помогаю со студенческими работами здесь

Вывод результата выполнения команд вызываемого bat-ника в Label
Всем доброго времени суток! Хочу сделать gui для своих батников. Фрейм условно можно разделить на...

Как убрать расстояние между label и entry?
Код label_of_bmi = Label(root, text=&quot;Индекс массы тела: &quot;) label_of_bmi.grid(row=3, column=0,...

Динамическое создание QLineEdit и label
Здравствуйте! Я начал делать форму без QtDesigner, задача состояла в том, что нужно сделать...

Как изменить надпись Label?
Я знаком с программирование, и только начинаю изучать Python. Вот код: # -*- coding: utf-8 -*-...

Pyqt автоматическое расширение scrollarea по горизонтали при увеличении размера новых label
Подскажите пожалуйста, ни как не могу догадаться как сделать автоматическое расширение scrollarea...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru