Cara membuat menu klik kanan/pop up pada window tkinter

BelajarPython - assalamualaikum wr. wb.

Jumpa lagi nih temen - temen.. Pada kesempatan kali ini, saya akan mencoba untuk membuat sebuah postingan untuk belajar bahasa pemrograman python nih.. Namun, sebelum saya ngasi tau apa materi pada postingan kali ini, saya akan mencoba untuk menanyakan satu hal nih.. Sudah kah kalian menginstall bahasa pemrograman python ini ? Jangan - jangan belum install nih.. Walah - walah.. Gimana ini.. Tapi tenang saja ya.. Gak usah bingung dan gak usah panik ya... Karena saya sudah membuatkan sebuah tutorial untuk menginstall python 3 nya.. Nah jika kalian tertarik untuk membacanya, yuk mari SILAHKAN KLIK DISNI YA TEMEN TEMEN.. Dan silahkan ikuti instruksinya ya.. Hehe

Nah gimana ? Udah install dong python 3 nya.. Nah sekarang, kalo sudah install, yuk mari kita lanjutkan postingan kita yang sudah tertunda karena iklan tadi.. Hehe jadi, pada postingan kali ini, saya akan mengajak kalian untuk belajar GUI atau tampilan dari python ya.. Tentu saja saya menggunakan tkinter untuk mewujudkannya.. Dan lebih spesifiknya, saya akan mencoba untuk membuat sebua pop up menu nih sekarang.. Jadi, sebuah popup ini merpakan sebuah menu yang akan tampil ketika kita klik kanan pada window akan kita tampilkan nantinya.. Nah udah penasaran belum bagaimana cara untuk membuatnya ? Jika iya, yuk langsung saja kita simak sama - sama postingan saya berikut ini.. Let’s check it out guys...

Cara membuat popUp menu atau menu klik kanan di tkinter python.

Nah sekarang saya akan lansung mengajak kalian untuk beljara bagaimana cara untuk membuat popUp menu ini tanpa saya menjelaskan apa itu yang saya maksud dengan popUp atau menu klik kanan ini.. Karena saya sudah menjelaskannya pada pembukaan tadi ya.. Jadi, kalau belum tau apa yang dimaksud dengan popUp menu atau menu klik kanan ini, silahkan cek saja ya di paragraf pembuka tadi ya.. Hehe

Nah pada sesi ini saya akan langusng membagikan code programnya nih temen - temen... Nah seperti apa ya kira - kira code program nya ? Susah tidak ya? Nah untuk menjawab semua itu, yuk mari kita simak sama - sama code program yang akan saya bagikan di bawah ini.. Let’s check it out guys..


from tkinter import Tk, Frame, Menu

class menuKlikKanan(Frame):
    def __init__(self, parent):
        Frame.__init__(self, parent)

        self.window = parent

        self.initUI()
        self.buatMenu()

    def initUI(self):
        self.window.title("klik kanan di window")
        self.window.geometry("250x150")

    def buatMenu(self):
        self.menu = Menu(self.window, tearoff=0)
        self.menu.add_command(label="Beep", command=self.bell)
        self.menu.add_command(label="Exit", command=self.perintah)

        self.window.bind("", self.tampilkanMenu)
        self.pack()

    def tampilkanMenu(self, e):
        self.menu.post(e.x_root, e.y_root)

    def perintah(self):
        self.quit()

if __name__ == '__main__':
    root = Tk()
    app = menuKlikKanan(root)
    root.mainloop()


Nah itu dia teme - temen code programnya.. Cukup pendek juga ya temen - temen... Hehe.. Ya gitu deh.. Nah lalu seperti apakah tampilan yang di hasilkan dari code program di atas ? Sesederhana apa ya tampilannya dengan hanya beberapa baris code program di atas ? Nah untuk menjawab rasa penasaran kalian tersebut, yuk mari kita simak aja sama - sama screenshoot hasil dari program di atas pada gambar yang ada di bawah ini...



Nah itu dia temen - temen...  Bisa kita lihat ya pada gambar diatas.. Ya terdapat 2 buah screenshoot disana.. Dimana screenshoot no. 1 merupakan sebuah screenshoot hasil dari window yang akan muncul pertama kali saat program di jalankan.. Dan screenshoot no. 2 merupakan screenshoot yang dihasilkan ketika windownya kita klik kanan ya.. Jadi udah jelas dong perbedaan dari 2 screenshoot di atas ? Ya sudah jelas  ya...


Penjelasan code program untuk membuat popUp menu atau menu klik kanan di tkinter python.

Nah setelah kita membuat dan melihat code program untuk membuat popUP menu atau menu klik kanan ini, maka saatnya saya akan mencoba untuk mengajak kalian untuk lebih memahami mengenai tiap baris code program yang sudah saya bagikan di atas.. Gimana caranya ? Ya dengan cara menjelaskannya dong.. Saya akan mencoba untuk menjelaskan tiap baris code program dari code program di atas.. Seperti apa penjelasannya ? Yuk silahkan di simak sama - sama penjelasan saya di bawah ini.. Let’s check it out temen - temen.. Semoga kalian paham ya temen - temen...



from tkinter import Tk, Frame, Menu  //code ini digunakan untuk  mengimport “Tk”, “Frame”, dan “menu” dari tkinter.

class menuKlikKanan(Frame):  //code ini digunakan untuk membuat sebuah class dengan nama “menKlikKanan”  yang akan saya gunakan untuk menampung semua code program untuk membuat window yang akan kita tampilkan nantinya.
    def __init__(self, parent):  //code ini digunakan untuk membuat sebuah constructor dengan mengoper sebuah parameter.
        Frame.__init__(self, parent)  //code ini digunakan untuk menjajdikan class ini sebagai GUI.

        self.window = parent  //code ini digunakan untuk mengoper nilai dari variabel parent ke variabel “window”.

        self.initUI()  //code ini digunakan untuk memanggil sebuah metode dengan nama “initUI”
        self.buatMenu()  //code ini digunakan untuk memanggil sebuah metode dengan nama “buatMenu”

    def initUI(self):  //code ini digunakan untuk membuat sebuah metode dengan nama “initUI” yang akan di gunakan untuk menampung semua code program untuk membuat elemen window yang akan kita tampilkan nantinya.
        self.window.title("klik kanan di window")  //code ini digunakan untuk mengubah judul dari window nya.
        self.window.geometry("250x150")  //code ini digunakan untuk mengubah uukuran window yang akan kita tampilkan nantinya.

    def buatMenu(self):  //code ini digunakan untuk meembuat sebuah metode dengan nama “butMenu” yang akan digunakan untuk membuat menu yang akan kita tampilkan nantinya.
        self.menu = Menu(self.window, tearoff=0)  //code ini digunakan untuk memanggil sebuah fungsi menu dari tkinter. Kemudian di tampiung ke dalam variabel “menu”
        self.menu.add_command(label="Beep", command=self.bell)  //code ini digunakan untuk memberikan sebuah perintah ke menu “beeb” sekaligus membuat menu perintah itu sendiri. Yaitu membunyikan bel.
        self.menu.add_command(label="Exit", command=self.perintah)  //code ini digunakan untuk membuat menu exit yang sekaligus memberikan perintah nya. Yaitu untuk menutup windownya.

        self.window.bind("<Button-3>", self.tampilkanMenu)  //code ini digunakan untuk menampilkan menu ketika klik kanan pada window.
        self.pack()  //code ini digunakan untuk menjadikan layoutnya menjadi pack.

    def tampilkanMenu(self, e):  //code ini digunakan untuk menampilkan menu popup nya di mana kita mengklik windownya.
        self.menu.post(e.x_root, e.y_root)  //code ini digunakan untuk mendapatkan posisi klik dan juga menampilkan menu popup nya.

    def perintah(self):  //code ini digunakan untuk membuat metode dengan nama “perintah” yang aka menjadi perintah dari menu “exit”
        self.quit() //code ini digunakan untuk menclose window nya.

if __name__ == '__main__':  //code ini digunakan untuk menyeleksi apakah file ini di panggil atau tidak.
    root = Tk()  //code ini digunakan untuk memanggil “Tk” yang kemudian di tamping ke dalam variabel “root”
    app = menuKlikKanan(root)  //code ini digunakan untuk memanggil class “menuKlikKanan” dengan memasukkan “root” sebagai parameter.

    root.mainloop()  //code ini digunakan agar window yang kita tampilkan tidak langsung close secara otomati.



Nah itu dia temen - temen penjelasan saya mengenai code program yang sudah saya bagikan sebelumnya.. Gimana ? Sudah cukup jelas kan temen - temen... Ya saya harap seperti itu ya.. Hehe.. Nah jika ada yang kurang di pahami, kalian bisa membacanya lagi secara perlahan... Namun, jika ada penjelasan yang kurang jelas atau ada yang ingin kalian tanyakan, kalian bisa menggunakan kolom komentar di bawah ini untuk bertanya... Insyaallah saya akan menjawab nya secepat yang saya bisa...


Oke sekian dulu ya temen - temen postingan saya kali ini.. Semoga apa yang sudah saya sajikan di atas dapat menambah pengetahuan dan ilmu baru bagi kalian.. Dan terimakasih ya sudah berkunjung dan membaca postingan saya kali ini.. Dan mohon maaf ya atas kekurangan ataupun ketidak jelasan yang ada di blog ini maupun pada postingan kali ini.. Jika kalian berkenan untuk menyampaikan kritik dan saran, kalian bisa menyampaikannya pada laman hubungi kami yang ada di blog ini ya...

Dan jangan lupa share ke temen kalian ya.. Hehe oke teriamakasi banyak ya dan sampai disini dulu.. Sampai jumpa di postingan saya yang lainnya ya temen - teme.. Oke terimakasi...

Wassalamualaikum wr. wb.
Previous
Next Post »
Thanks for your comment