cara membuat calculator tkinter

Cara Membuat Calculator Tkinter

Pada tutorial kali ini, kita akan membuat Calculator Tkinter. Tkineter sendiri merupakan library python yang menyediakan cara cepat dan mudah untuk membuat aplikasi GUI. Tkinter menydiakan antarmuka berorientasi objek yang kuat ke perangkat Tk GUI.

Sebelum mengikuti tutorial cara membuat calculator tkinter, kalian harus menginstall python di sistem operasi kalian. Kalian bisa cek dengan membuka CMD lalu mengetikan perintah python -V. Jika kalian sudah menginstall maka nanti akan muncul versi python kalian. Disarankan menggunakan python versi 3.

Selain itu, kalian juga harus menginstall text editor. Disini saya menggunakan visual studio code. Kalian bebas menggunakan text editor apapun yang penting support IDE python.

Selanjutnya, kita akan menginstall library tkinter. Dengan cara buka terlebih dahulu CMD, kemudian jalankan perintah pip install tk. Tunggu hingga instalasinya berhasil.

Sekarang, kita sudah bisa menggunakan library tkinter. Untuk selanjutnya, kita perlu membuat file main.py terlebih dahulu. Lalu buka file tersebut dengan text editor kalian.

Pertama kita perlu mengimport library tkinter seperti berikut.

from tkinter import *

Selanjutnya, kita perlu variable untuk menampung expression yang dipakai user nantinya. Kemudian kita buat fungsi untuk mengupdate expression tersebut.

expression = ""

def press(num):
    global expression

    expression = expression + str(num)

    equation.set(expression)

Selain itu, kita perlu membuat fungsi untuk mengevaluasi final expression yang dipakai user.

def equalpress():
    try:
        global expression
        total = str(eval(expression))
        equation.set(total)
        expression = ""
    except:
        equation.set(" error ")
        expression = ""

Kita juga perlu membuat fungsi untuk membersihkan content yang digunakan dalam menerima input box dari user.

def clear():
    global expression
    expression = ""
    equation.set("")

Sekarang, kita akan membuat GUI untuk calculator kita. Pertama kita panggil dulu library Tk. Kemudian kita atur warna background, judul, dan ukuran untuk GUI calculator. Selanjutnya, kita buat kotak input yang nantinya digunakan sebagai penerima expression yang diinputkan oleh user.

# Driver code
if __name__ == "__main__":
    # membuat GUI window
    gui = Tk()

    # Warna background GUI window
    gui.configure(background="light green")

    # Judul GUI window
    gui.title("Simple Calculator")

    # Ukuran GUI window
    gui.geometry("480x520")

    # Membuat variable class
    equation = StringVar()

    # Membuat kotak input untuk menerima expression
    expression_field = Entry(gui, textvariable=equation)

    # Mengatur posisi kotak input
    expression_field.grid(columnspan=10, ipadx=150, pady=10)

Selanjutnya masih di dalam kondisi if, kita akan buat tampilan untuk tombol angka dari 0 sampai 9. Disini kita menggunakan background berwarna putih dan tulisannya berwarna hitam. Untuk ukurannya yaitu tinggi 5 dan lebar 12.

    button1 = Button(gui, text=' 1 ', fg='black', bg='white',
                     command=lambda: press(1), height=5, width=12)
    button1.grid(row=2, column=0)

    button2 = Button(gui, text=' 2 ', fg='black', bg='white',
                     command=lambda: press(2), height=5, width=12)
    button2.grid(row=2, column=1)

    button3 = Button(gui, text=' 3 ', fg='black', bg='white',
                     command=lambda: press(3), height=5, width=12)
    button3.grid(row=2, column=2)

    button4 = Button(gui, text=' 4 ', fg='black', bg='white',
                     command=lambda: press(4), height=5, width=12)
    button4.grid(row=3, column=0)

    button5 = Button(gui, text=' 5 ', fg='black', bg='white',
                     command=lambda: press(5), height=5, width=12)
    button5.grid(row=3, column=1)

    button6 = Button(gui, text=' 6 ', fg='black', bg='white',
                     command=lambda: press(6), height=5, width=12)
    button6.grid(row=3, column=2)

    button7 = Button(gui, text=' 7 ', fg='black', bg='white',
                     command=lambda: press(7), height=5, width=12)
    button7.grid(row=4, column=0)

    button8 = Button(gui, text=' 8 ', fg='black', bg='white',
                     command=lambda: press(8), height=5, width=12)
    button8.grid(row=4, column=1)

    button9 = Button(gui, text=' 9 ', fg='black', bg='white',
                     command=lambda: press(9), height=5, width=12)
    button9.grid(row=4, column=2)

    button0 = Button(gui, text=' 0 ', fg='black', bg='white',
                     command=lambda: press(0), height=5, width=12)
    button0.grid(row=5, column=0)

Setelah itu, kita buat untuk tampilan ekspresi seperti penjumlahan, pengurangan, perkalian, dan pembagian. Untuk warna dan ukuran kita samakan seperti tombol angka.

    plus = Button(gui, text=' + ', fg='black', bg='white',
                  command=lambda: press("+"), height=5, width=12)
    plus.grid(row=2, column=3)

    minus = Button(gui, text=' - ', fg='black', bg='white',
                   command=lambda: press("-"), height=5, width=12)
    minus.grid(row=3, column=3)

    multiply = Button(gui, text=' * ', fg='black', bg='white',
                      command=lambda: press("*"), height=5, width=12)
    multiply.grid(row=4, column=3)

    divide = Button(gui, text=' / ', fg='black', bg='white',
                    command=lambda: press("/"), height=5, width=12)
    divide.grid(row=5, column=3)

    equal = Button(gui, text=' = ', fg='black', bg='white',
                   command=equalpress, height=5, width=12)
    equal.grid(row=5, column=2)
    Decimal = Button(gui, text='.', fg='black', bg='white',
                     command=lambda: press('.'), height=5, width=12)
    Decimal.grid(row=6, column=0)

Terakhir, kita buat tombol untuk menghapus inputan. Setelah semua tampilan sudah dibuat, sekarang kita langsung start GUI.

    clear = Button(gui, text='Clear', fg='black', bg='white',
                   command=clear, height=5, width=12)
    clear.grid(row=5, column='1')
    gui.mainloop()

Kita bisa langsung menjalankan code yang kita buat dengan membuka CMD, lalu kita tuliskan perintah python main.py. Jika sudah maka akan muncul tampilan seperti berikut.

calculator tkinter

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top