|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.05.2021, 03:07 | #1 |
Новичок
Джуниор
Регистрация: 02.05.2021
Сообщений: 1
|
Tkinter вывод данных
Мне надо в новом окне вывести данные: S, P, a. Вывод происходит по нажатию кнопки "Відповідь".
from tkinter import * from tkinter import messagebox, Label from PIL import Image, ImageTk import tkinter as tk #Функция для закривання програми def on_closing(): if messagebox.askokcancel("Вихід з програми", "Хочете вийти з програми?"): root.destroy() #Функция для очищення введених даних def clear(): #ctopA_entry.delete(0, END) ctopB_entry.delete(0, END) ctopC_entry.delete(0, END) ctopD_entry.delete(0, END) KytC_entry.delete(0, END) KytD_entry.delete(0, END) #Функция для виводу "Відповіді" def vidpov(): from math import sqrt, pow j = float(ctopC_entry.get()) #Сторона С l = float(ctopB_entry.get()) #Сторона В k = float(ctopD_entry.get()) #Сторона D q = float(ctopD_entry.get()) - float(ctopB_entry.get()) #формула для знаходженя FD h = sqrt(pow(j, 2) - pow(q, 2)) a = h P = a + l + k + j o = ( l + k ) / 2 S = h * o #Для створення графічного вікна застосовується конструктор Tk (), який визначений # в модулі tkinter. Створюване вікно присвоюється змінної root, і через цю змінну # ми можемо управляти атрибутами вікна. Зокрема, за допомогою методу title () можна # встановити заголовок вікна. #------------------------------------------------------------------------------------- root = Tk() root.protocol("WM_DELETE_WINDOW", on_closing) root.title('Калькулятор "Трапеція"') root.resizable(width=False, height=False) root.wm_attributes("-topmost", True) # щоб вікно залишалося вище всіх інших вікон root.wm_attributes("-alpha", 0.95) canvas = Canvas(root, width=600, height=550, bd=1, bg='#D4135B', highlightthickness=0) #Canvas створюються об'єкти-полотна, на яких можна "малювати", розміщуючи різні фігури і об'єкти. Робиться це за допомогою викликів відповідних методів. canvas.pack() #------------------------------------------------------------------------------------- #Добавлення малюнку до нашої програми #------------------------------------------------------------------------------------- our_image = Image.open("Трапеція.png") our_image = our_image.resize((550, 350), Image.ANTIALIAS) our_image = ImageTk.PhotoImage(our_image) our_label = Label(image=our_image) our_label.image = our_image our_label.place(x=22.5, y=48) #------------------------------------------------------------------------------------- #nameA_label = Label(text="а =", # fg='#00FDFF', # bg='#FF004C', # font=("Comic Sans MS", # 14, "bold")) # nameA_label.place(relx=.01, rely=.728) # ctopA_entry = Entry() # ctopA_entry.place(relx=.07, rely=.739) #Добавлення тесту на вводу тексту. Розташовування його та колір #------------------------------------------------------------------------------------- nameTrap_label = Label(text="Малюнок даної трапеції", fg='#00FDFF', bg='#FF004C', font=("Comic Sans MS", 16, 'bold')) nameTrap_label.place(relx=.5, rely=.01, anchor="n") nameStopona_label = Label(text="Сторони:", fg='#00FDFF', bg='#FF004C', font=("Comic Sans MS", 13, 'italic')) nameStopona_label.place(relx=.01, rely=.728) nameB_label = Label(text="b =", fg='#00FDFF', bg='#FF004C', font=("Comic Sans MS", 14, "bold")) nameB_label.place(relx=.08, rely=.77) ctopB_entry = tk.Entry(root, width=7, justify='center') ctopB_entry.place(relx=.143, rely=.786) nameC_label = Label(text="c =", fg='#00FDFF', bg='#FF004C', font=("Comic Sans MS", 14, "bold")) nameC_label.place(relx=.08, rely=.825) ctopC_entry = tk.Entry(root, width=7, justify='center') ctopC_entry.place(relx=.143, rely=.8385) nameD_label = Label(text="d =", fg='#00FDFF', bg='#FF004C', font=("Comic Sans MS", 14, "bold")) nameD_label.place(relx=.08, rely=.874) ctopD_entry = tk.Entry(root, width=7, justify='center') ctopD_entry.place(relx=.143, rely=.89) #------------------------------------------------------------------------------------- nameKyt_label = Label(text="Кути(вводити в градусах):", fg='#00FDFF', bg='#FF004C', font=("Comic Sans MS", 13, 'italic')) nameKyt_label.place(relx=.3, rely=.728) KytC_label = Label(text="∠С =", fg='#00FDFF', bg='#FF004C', font=("Comic Sans MS", 12, "bold")) KytC_label.place(relx=.4, rely=.79) KytC_entry = tk.Entry(root, width=7, justify='center') KytC_entry.place(relx=.49, rely=.8) KytD_label = Label(text="∠D =", fg='#00FDFF', bg='#FF004C', font=("Comic Sans MS", 12, "bold")) KytD_label.place(relx=.4, rely=.853) KytD_entry = tk.Entry(root, width=7, justify='center') KytD_entry.place(relx=.49, rely=.86) #------------------------------------------------------------------------------------- # вставка начальных данных ctopB_entry.insert(0, "8") ctopC_entry.insert(0, "13") ctopD_entry.insert(0, "20") KytC_entry.insert(0, "135") KytD_entry.insert(0, "60") #------------------------------------------------------------------------------------- #Створення двох кнопок. Розташовування їх та колір. #------------------------------------------------------------------------------------- vidpovid = tk.Button(root, text="Відповідь", fg='#00FDFF', bg='#FF004C', width=8, height=1, font=('Helvetica', '12', 'bold'), command=vidpov) vidpovid.place(relx=.68, rely=.93) clear = tk.Button(root, text="Clear", fg='#00FDFF', bg='#FF004C', width=8, height=1, font=('Helvetica', '12', 'bold'), command=clear) clear.place(relx=.84, rely=.93) #------------------------------------------------------------------------------------- root.mainloop() |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Tkinter, entry | Python Programmer | Python | 3 | 16.11.2018 22:51 |
Tkinter.Canvas, вывод изображений: PhotoImage некорректно передаётся из функции в функцию | БалаШагаЛ | Python | 1 | 23.11.2017 01:03 |
PASCAL. Сортировка данных по размеру. Вывод корректных и некорректных данных. | pro100wato | Паскаль, Turbo Pascal, PascalABC.NET | 8 | 27.04.2017 16:44 |
вывод в див имен из бд и при нажатии вывод в отдельный див дополнительной информации об этом имени / PHP и базы данных | looni123 | JavaScript, Ajax | 3 | 03.04.2014 21:26 |
Как сделать вывод данных после всего ввода данных. | Donatello | Общие вопросы C/C++ | 6 | 16.01.2011 16:32 |