কম্পিউটার টিউটোরিয়াল

পাইথনে Tkinter ব্যবহার করে সিম্পল GUI ক্যালকুলেটর তৈরি করা

এই টিউটোরিয়ালে আমরা Tkinter মডিউল ব্যবহার করে একটি সিম্পল GUI ক্যালকুলেটর তৈরি করব। Tkinter পাইথনের বিল্ট-ইন মডিউল GUI অ্যাপ্লিকেশন ডেভেলপমেন্টের জন্য। এটি ব্যবহার করা সহজ এবং পাইথনের সাথে বিল্ট-ইন আসে। আমরা GUI অ্যাপ্লিকেশন দিয়ে আমাদের ডেটা ভিজুয়ালাইজ করতে পারি।

চলুন দেখি কিভাবে একটি সিম্পল GUI ক্যালকুলেটর তৈরি করা যায়।

  • Tkinter- থেকে সব কিছু * দিয়ে ইম্পোর্ট করুন।
  • ক্যালকুলেটর 위한 ইন্টারফেস তৈরি করুন।
  • একটি ইনপুট ফাংশন তৈরি করুন যা ইনপুট ফিল্ডে সংখ্যা এন্টার করবে।
  • একটি ক্লিয়ার ফাংশন তৈরি করুন যা ইনপুট ফিল্ড থেকে সব মুছে দেবে।
  • এবং অবশেষে, একটি ইভ্যালুয়েট ফাংশন তৈরি করুন যা এক্সপ্রেশন ক্যালকুলেট করে রেজাল্ট দেবে।

উদাহরণ

# importing everything from tkinter
from tkinter import *

# expression to access among all the functions
expression = ""

# functions
def input_number(number, equation):
    global expression
    expression = expression + str(number)
    equation.set(expression)

def clear_input_field(equation):
    global expression
    expression = ""
    equation.set("Enter the expression")

def evaluate(equation):
    global expression
    try:
        result = str(eval(expression))
        equation.set(result)
        expression = ""
    except:
        equation.set("Enter a valid expression")
        expression = ""

# creating the GUI
def main():
    window = Tk()
    window.title("Calculator")
    window.geometry("325x175")
    equation = StringVar()
    input_field = Entry(window, textvariable=equation)
    input_field.place(height=100)
    input_field.grid(columnspan=4, ipadx=100, ipady=5)
    equation.set("Enter the expression")

    # creating buttons and placing them at respective positions
    _1 = Button(window, text='1', fg='white', bg='black', bd=0, command=lambda: input_number(1, equation), height=2, width=7)
    _1.grid(row=2, column=0)
    _2 = Button(window, text='2', fg='white', bg='black', bd=0, command=lambda: input_number(2, equation), height=2, width=7)
    _2.grid(row=2, column=1)
    _3 = Button(window, text='3', fg='white', bg='black', bd=0, command=lambda: input_number(3, equation), height=2, width=7)
    _3.grid(row=2, column=2)
    _4 = Button(window, text='4', fg='white', bg='black', bd=0, command=lambda: input_number(4, equation), height=2, width=7)
    _4.grid(row=3, column=0)
    _5 = Button(window, text='5', fg='white', bg='black', bd=0, command=lambda: input_number(5, equation), height=2, width=7)
    _5.grid(row=3, column=1)
    _6 = Button(window, text='6', fg='white', bg='black', bd=0, command=lambda: input_number(6, equation), height=2, width=7)
    _6.grid(row=3, column=2)
    _7 = Button(window, text='7', fg='white', bg='black', bd=0, command=lambda: input_number(7, equation), height=2, width=7)
    _7.grid(row=4, column=0)
    _8 = Button(window, text='8', fg='white', bg='black', bd=0, command=lambda: input_number(8, equation), height=2, width=7)
    _8.grid(row=4, column=1)
    _9 = Button(window, text='9', fg='white', bg='black', bd=0, command=lambda: input_number(9, equation), height=2, width=7)
    _9.grid(row=4, column=2)
    _0 = Button(window, text='0', fg='white', bg='black', bd=0, command=lambda: input_number(0, equation), height=2, width=7)
    _0.grid(row=5, column=0)
    plus = Button(window, text='+', fg='white', bg='black', bd=0, command=lambda: input_number('+', equation), height=2, width=7)
    plus.grid(row=2, column=3)
    minus = Button(window, text='-', fg='white', bg='black', bd=0, command=lambda: input_number('-', equation), height=2, width=7)
    minus.grid(row=3, column=3)
    multiply = Button(window, text='*', fg='white', bg='black', bd=0, command=lambda: input_number('*', equation), height=2, width=7)
    multiply.grid(row=4, column=3)
    divide = Button(window, text='/', fg='white', bg='black', bd=0, command=lambda: input_number('/', equation), height=2, width=7)
    divide.grid(row=5, column=3)
    equal = Button(window, text='=', fg='white', bg='black', bd=0, command=lambda: evaluate(equation), height=2, width=7)
    equal.grid(row=5, column=2)
    clear = Button(window, text='Clear', fg='white', bg='black', bd=0, command=lambda: clear_input_field(equation), height=2, width=7)
    clear.grid(row=5, column=1)

    window.mainloop()

# start of the program
if __name__ == '__main__':
    main()

আউটপুট

যদি উপরের প্রোগ্রামটি রান করুন, তবে নিচের মতো একটি সিম্পল ক্যালকুলেটর পাবেন।

পাইথনে Tkinter ব্যবহার করে সিম্পল GUI ক্যালকুলেটর তৈরি করা

= বাটন প্রেস করার পর এক্সপ্রেশনের রেজাল্ট।

পাইথনে Tkinter ব্যবহার করে সিম্পল GUI ক্যালকুলেটর তৈরি করা

উপসংহার

টিউটোরিয়াল সম্পর্কে কোনো সন্দেহ থাকলে কমেন্ট সেকশনে জানান।


  1. পাইথনে Tkinter প্রোগ্রামিং

  2. পাইথন Tkinter ব্যবহার করে সিম্পল রেজিস্ট্রেশন ফর্ম

  3. পাইথন Tkinter-এ কালার গেম তৈরি

  4. পাইথনে cx_Freeze ব্যবহার করে এক্সিকিউটেবল বানানো