Loading...
mihaileg avatar mihaileg 0 Точки

Графично приложение Суматор за числа - Programming Basics with Python

Здравейте!  Решавам задачите от книгата на Наков и се затрудних на примера за суматора за числа от първа глава, а именно не ми се визуализират number entry-тата както и знаците. 

https://ibb.co/cTfKKcS

Знам че целата на задачата е просто да ни "запали" по програмирането и да ни покаже какво бихме могли да правим, но въпреки това ми е любопитно защо се получава така. В линка е кода, който съм написал.

https://pastebin.com/avT3F1F8  

Тагове:
0
YanaStamenova avatar YanaStamenova 21 Точки

Аз се присъединявам към въпроса. На мен също ми излезе един празен прозорец.

0
ReyBloodrose avatar ReyBloodrose 0 Точки

При мен всичко си излезе нормално, като изключим, че програмата не извършва никакви изчисления при натискане на бутона "Calculate". //Полето за резултат си остава с надписа "Result..."

Качвам кода, дано ви свърши работа!
П.с: ако откриете грешката ми, ще се радвам да ме известите!
 

import tkinter as tk


class Application(tk.Frame):
    def __init__(self, master=None):
        super().__init__(master)

        self.pack()
        self.create_widgets()

    def create_widgets(self):
        # create widgets
        self.firstNumberEntry = tk.Entry()
        self.plusSign = tk.Label(text="+")
        self.secondNumberEntry = tk.Entry()
        self.equalSign = tk.Label(text="=")
        self.resultLabel = tk.Label(text="Result...", bg="green", fg="white")
        self.calculateButton = tk.Button(text="Calculate")

        # place widgets
        self.firstNumberEntry.pack(side="left")
        self.plusSign.pack(side="left")
        self.secondNumberEntry.pack(side="left")
        self.equalSign.pack(side="left")
        self.resultLabel.pack(side="left")
        self.calculateButton.pack(side="left")

    def calculate(self):
        first_value = float(self.firstNumberEntry.get())
        second_value = float(self.secondNumberEntry.get())
        result = first_value + second_value
        self.resultLabel.config(text=str(result), bg="green", fg="white")

    # create the application


app = Application()
app.master.title("Sumator")
app.master.minsize(width=100, height=50)

# start the program
app.mainloop()
0
MiroslavK17 avatar MiroslavK17 1 Точки

Здравейте, оправих програмката ! :) Проблема е, че calculateButton не правеше нищо, тоест не беше свързан с def calculate. Ето линк към оправената програма: https://pastebin.com/BcTbwyw0

1
Z.Bakov avatar Z.Bakov 0 Точки

Здравейте, след доста опити ето така се справих аз. :)

import tkinter as tk

class Application(tk.Frame) :
    def __init__(self, master=None):
        super().__init__(master)

        self.pack()
        self.create_widgets()

    def create_widgets(self):
        #create widgets
        self.firstNumberEntry = tk.Entry()
        self.plusSign = tk.Label(text="+")
        self.secondNumberEntry = tk.Entry()
        self.equalSign = tk.Label(text="=")
        self.resultLabel = tk.Label(text="Result...", bg="green", fg="white")
        self.calculateButton = tk.Button(text="Calculate", command=self.calculate)

        # place widgets
        self.firstNumberEntry.pack(side="left")
        self.plusSign.pack(side="left")
        self.secondNumberEntry.pack(side="left")
        self.equalSign.pack(side="left")
        self.resultLabel.pack(side="left")
        self.calculateButton.pack(side="left")

    def calculate(self):
        try:
            first_value = float(self.firstNumberEntry.get())
            second_value = float(self.secondNumberEntry.get())
            result = first_value + second_value
            self.resultLabel.config(text=str(result), bg="green", fg="white")
        except ValueError:
            self.resultLabel.config(text="Not number/s.", bg="red", fg="black")

# create the application
app = Application()
app.master.title("Sumator")
app.master.minsize(width=100, height=50)

# start the program
app.mainloop()
0
14/12/2019 21:28:14
dZf1aeA-patsm00re18 avatar dZf1aeA-patsm00re18 1 Точки

I am not sure whether or not this post is written by the means of that company as no one else understand such precise about my problem. You're wonderful! Thanks! Play prodigy math game Play to Improve Arithmetic Skills!

0
brightburn avatar brightburn 1 Точки

Каквото и да променя аз ми излиза празен прозорец...

0
O879858330 avatar O879858330 1 Точки

Разбрах, че никой от @SoftUni не коментира, студентите се врят в своя котел...

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.