Софтуерно Инженерство
Loading...
mihaileg avatar mihaileg 0 Точки

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

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

https://ibb.co/cTfKKcS

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

https://pastebin.com/avT3F1F8  

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

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

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