Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.03.2021, 13:09   #1
kilogram4ik
Пользователь
 
Регистрация: 15.10.2020
Сообщений: 68
По умолчанию ошибки (tkinter)

ошибка в том если ввести в entry1 и entry2 двухзначное число программа не считает и выдает сообщение "нельзя!!!". А такого не должно быть. Еще есть проблема в том есть в entry2 ввести двухзначное число , а entry1 однозначное программа выдает ошибку, если сделать все наоборот , то все ок.

В чем ошибка вообще не могу понять.


Код:
from tkinter import *
from tkinter import messagebox
import math

app = Tk ()
app.title=('практика')
app.geometry('555x360')




def kilogram4ik():
       try:
           d = e1.get()
           d1 = e2.get()
           if d.lstrip('-').replace('.','',1).isdigit() and d1.lstrip('-').replace('.','',1).isdigit():
               if float(d) and float(d1) > 100001:
                   messagebox.showinfo("GUI Python", "макс число 100000. Если хотите это исправить , то скажите это")
               else:
                   if len(d) and len(d1) > 1:
                       if d[0] + d[1] == '00' or d1[0] + d1[1] == '00' or d[0] == '0' or d1[0] == '0' :
                           messagebox.showinfo("GUI Python", "НЕЛЬЗЯ!!!")
                           exit
                   else:
                       a = float(e1.get())
                       B = float(e2.get())
                       z1 = (math.sin(a) + math.cos(2 * B + a)) / (math.cos(a) - math.sin(2 * B - a))
                       label.config(text=str(z1))


           else:
               messagebox.showinfo("GUI Python", "НЕЛЬЗЯ!!!")
       except ValueError:
            messagebox.showinfo("GUI Python", "Ошибка ввода.")



def kilogram4ik1():
        try:
            d = e1.get()
            d1 = e2.get()
            if d.lstrip('-').replace('.', '', 1).isdigit() and d1.lstrip('-').replace('.', '', 1).isdigit():
                if float(d) and float(d1) > 100001:
                    messagebox.showinfo("GUI Python", "макс число 100000. Если хотите это исправить , то скажите это")
                else:
                    if len(d) and len(d1) > 1:
                         if d[0] + d[1] == '00' or d1[0] + d1[1] == '00' or d[0] == '0' or d1[0] == '0' :


                            messagebox.showinfo("GUI Python", "НЕЛЬЗЯ!!!")
                            exit
                    else:
                        a = float(e1.get())
                        B = float(e2.get())
                        z2 = (1 + math.sin(2 * B)) / (math.cos(2 * B))
                        label1.config(text=str(z2))


            else:
                messagebox.showinfo("GUI Python", "НЕЛЬЗЯ!!!")
        except ValueError:
            messagebox.showinfo("GUI Python", "Ошибка ввода.")


l3=Label(text="а=")
l3.pack()



e1 = Entry(width=10)
e1.pack()


l4=Label(text="B=")
l4.pack()



e2 = Entry(width=10)
e2.pack()


btn = Button(text="посчитать пример 1",command=kilogram4ik)
btn.pack()

btn1 = Button(text="посчитать пример 2",command=kilogram4ik1)
btn1.pack()

l1 = Label(text="пример №1 : z1=(sin(a)+cos(2B+a))/(cos(a)-sin(2B-a))", font=(2))
l1.pack()

l2 = Label(text="пример №2 : z2=(1+sin(2B))/cos(2B)", font=2)
l2.pack()

l5=Label()
l5.pack()

label=Label(font=3)
label.pack()

label1=Label(font=3)
label1.pack()

app.mainloop()

Последний раз редактировалось kilogram4ik; 10.03.2021 в 14:57.
kilogram4ik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Tkinter, entry Python Programmer Python 3 16.11.2018 22:51
Изображение на кнопке Tkinter dbalor Python 1 02.07.2018 10:03
чекбокс,Tkinter dima.karpov Python 1 08.12.2016 19:41
GUI tkinter textbox mrprim Python 1 16.09.2016 17:51
MessageBox в Tkinter Ibanez Wizard PHP 1 22.11.2011 16:50