cara membuat file chooser atau membuka file di tkinter

BelajarPython - assalmualaikum wr. wb.

Jumpa lagi nih temen - temen.. Pada kesempatan kali ini, saya akan mengajak kalian untuk belajar GUI dari bahasa pemrograman python. Udah tau GUI kan ? Ya.. GUI ini bisa juga kita katakan sebagai sebuah tampilan... GUI sendiri merupakan singkatan dari Graphical user interface. Atau jika kita artikan dalam bahasa indonesia, artinya adalah “Grafik antarmuka pengguna” .. Yah lebih simple nya sih bisa kita katakan sebagai sebuah tampilan..

Nah sekarang, sebelum kita belajar membuat tampilan, saya mau nanyak dulu.. Kalian sudah install python 3 nya belum ? Kalau belum, yuk mari kita install dulu ya python 3 nya.. Jika kalian butuh tutorial, tenang saja ya.. Karena saya sudah membuatkan postingan yang membahas mengenai tutorial instalasi python 3 nya tersebut.. Untuk membacanya, KALIAN BISA KLIK DISINI YA temen - temen... Silahkah tuh ikuti instruksi - instruksi instalasinya hingga selesai...

Nah setelah kita install python 3 nya, yuk sekarang kita lanjut postingan kali ini.. Jadi, pada postingan ini saya akan mencoba untuk mengajak kalian untuk belajar GUI python seperti yang sudah saya katakan tadi.. Nah lebih spesifiknya, pada postingan kali ini saya akan memberikan sebuah contoh untuk membuat sebuah file chooser atau pembuka sebuah file... Nah cukup menarik bukan... Nah jika sudah penasaran, yuk tanpa lama - lama lagi, langsung saja kita simak sama - sama postingan saya kali ini.. Let’s check it out temen - temen...

Cara membuat sebuah file chooser atau pembuka file pada tkinter python 3.

Seperti yang sudah saya katakan sebelumnya kita akan membuat sebuah pembuka file.. Nah pada sesi inilah hal tersebut akan saya kupas... Ya tentu saja saya akan langsung memberikan code programnya.. Dan selanjut nya tinggal kalian sendiri lah yang harus memahami nya.. Hehe.. Lalu seperti apa ya kira - kira code program untuk membuka sebuah file ini ? Jika kalian sudah penasaran, yuk langsung saja kita simak sama - sama code program yang akan saya bagikan di bawah ini.... Let’s check it out temen - temen..

from tkinter import Frame, Tk, BOTH, Text, Menu, END, filedialog

class MembukaFile(Frame):
    def __init__(self, parent):
        Frame.__init__(self, parent)
        self.window = parent
        self.initUI()

    def initUI(self):
        self.window.title("File dialog")
        self.pack(fill=BOTH, expand=1)
        self.window.geometry("300x250")

        self.buatMenubar()

    def buatMenubar(self):
        menubar = Menu(self.window)
        self.window.config(menu=menubar)

        fileMenu = Menu(menubar)
        fileMenu.add_command(label="Open", command=self.bukaFile)
        menubar.add_cascade(label="File", menu=fileMenu)


    def bukaFile(self):
        tipeFile = [('Python files', '*.py'), ('All files', '*')]
        bukaFile = filedialog.Open(self, filetypes=tipeFile)
        isiFile = bukaFile.show()

if __name__ == '__main__':
    root = Tk()
    ex = MembukaFile(root)
    root.mainloop()



Nah itu dia temen - temen code programnya.. Gimana ? Cukup panjang juga ya... Eh nggak kok lumayan pendek.. Tergantung pandangan kalian ya.. Hehe... Nah pada program tersebut, kita hanya akan memanggil pembuka file saja ya tanpa memanfaatkan file yang kita pilih nantinya.. Nah lalu gimana ya tampilan yang akan di hasilkan dari code program di atas ?




Nah itu dia temen - temen contoh screenshoot ketika program di atas ketika kita jalankan.. Bisa kita lihat ya pada gambar di atas terdapat dua contoh screenshoot.. Dimana :

  1. yang no. 1 merupakan screenshoot dari window yang pertama kali muncul ketika program di atas kita jalankan..
  2. Dan screenshoot ke 2 merupakah tampilan yang dihasilkan ketika kita menekan tombol menu “file” dan meng klik submenu “open”. Pada screenshoot no. 2 terlihat ya di sana kita dapat memilih file yang ingin kita buka.

Namun, ketika kita memilih file maka tidak akan terjadi apa - apa.. Karena kita tidak memproses file yang sudah kita pilih tadi... Gimana ? Sudah jelaskan temen - temen mengenai penjelasan dari cara untuk membuka sebuah file ini ? Ya saya rasa sudah cukup jelas ya temen - temen..

Cara memproses file yang sudah kita pilih pada file chooser tkinter python 3.

Nah setelah kita sudah berhasil membuat sebuah file chooser, maka selanjut nya saya akan mencoba untuk memproses file yang sudah kita pilih tadi.. Sebenarnya, code program nya sama saja dengan code program yang sudah saya bagikan di atas tadi.. Namun, saya menambahkan beberapa code program saja untuk memproses file yang kita pilih nantinya... Nah kira - kira seperti apa ya code programnya.. Yuk langsung saja kita simak sama - sama penambahan code programnya pada code program di bawah ini.. Let’s check it out temen - temen...

from tkinter import Frame, Tk, BOTH, Text, Menu, END, filedialog

class MembukaFile(Frame):
    def __init__(self, parent):
        Frame.__init__(self, parent)
        self.window = parent
        self.initUI()

    def initUI(self):
        self.window.title("File dialog")
        self.pack(fill=BOTH, expand=1)
        self.window.geometry("300x250")

        self.buatMenubar()
        self.buatTempatText()

    def buatMenubar(self):
        menubar = Menu(self.window)
        self.window.config(menu=menubar)

        fileMenu = Menu(menubar)
        fileMenu.add_command(label="Open", command=self.bukaFile)
        menubar.add_cascade(label="File", menu=fileMenu)

    def buatTempatText(self):
        self.txt = Text(self)
        self.txt.pack(fill=BOTH, expand=1)

    def bukaFile(self):
        tipeFile = [('Python files', '*.py'), ('All files', '*')]
        bukaFile = filedialog.Open(self, filetypes=tipeFile)
        isiFile = bukaFile.show()

        if isiFile != '':
            teks = self.bacaFile(isiFile)
            self.txt.insert(END, teks)

    def bacaFile(self, namaFile):
        f = open(namaFile, "r")
        teks = f.read()
        return teks

if __name__ == '__main__':
    root = Tk()
    ex = MembukaFile(root)
    root.mainloop()


Nah itu dia temen - temen code programnya.. Seperti yang sudah saya katakan tadi ya.. Code progrmnya sebenarnya sama saja.. Namun saya tambahin beberapa code program untuk mengelola file yang akan kita pilih nantinya.. Penambahan tersebut antara lain adalah metode “buatTempatText” yang akan menjadi tempat diman kita akan menampilkan teks dari file kita nantinya.. Dan yang kedua adalah metode “bacaFIle” yang bertugas untuk membaca file yang kita pilih yang kemudian kita masukkan kedalam tempat teks nya.. Dan yang terakhir adalah perubahan pada metode “bukaFile” terdapat penambahan code program di sana ya.. Untuk lebih jelasnya, kalian bisa bandingkan sendiri code program tersebut dengan code program diatasnya ya...

Nah lalu seperti apa ya kira - kira tampilan yang akan di hasilan dari code program di atas ? Nah langsung saja yuk kita simak tampilannya pada gambar yang ada di bawah ini...




Nah itu dia temen temen tampilan yang akan di hasilkan dari code program di atas... Dimana :

1.tampilan atau screenshoot no. 1 merupakan tampilan yang akan di hasilkan pertama kali ketika code program di atas kita jalankan...
2.Dan screenshoot no. 2 merupakan screenshoot yang dihasilkan ketika kita mengklik menu “file” dan mengklik “open”. Dan disinilah kita dapat memilih file yang akan kita buka..
3.Dan screenshoot no. 3 merupakan tampilan yang dihasilkan ketika kita sudah membuka sebuah file teks. Dimana akan tampil teks yang ada di dalam file yang sudah kita pilih tadi ya...

Nah gimana ? Sudah cukup jelas ya temen.. Ya saya rasa juga begitu.. Hehe

Penjelasan code program untuk membuat pemilih file atau file chooser di tkinter python 3.

Nah setelah kita belajar cara untuk membuat sebuah pemilih file atau file chooser dan juga sudah membuat atau belajar cara memnfaatkan file yang kita pilih, maka selanjutnya saya akan mencoba untuk menjelaskan code program yang sudah kita bagikan tadi... Hal ini saya lakukan agar kalian bisa lebih memahami setiap code program yang sudah saya bagikan tadi.. Dan tentu dengan harapan kalian dapat memperaktekkannya sendiri..

Nah langsung saja yuk temen - temen kita mulai penjelasannya.. Silahkan di simak ya penjelasan saya mengenai code program tersebut pada penjelasan di bawah ini.. Let’s check it out temen - temen....



from tkinter import Frame, Tk, BOTH, Text, Menu, END, filedialog  //code ini digunakan untuk mengimport “Frame”, “Tk”, “BOTH”, “Text”, “Menu”, “END” dan “File Dialog” dari tkinter.

class MembukaFile(Frame):  //code ini digunakan untuk membuat sebuah class dengan nama class “MembukaFile”  yang akan digunakan untukmenampung semua code program untuk menampilkan window dan elemennya yang akan kita tampilkan nantinya.
    def __init__(self, parent):  //code ini digunakan untuk membuat construktor untuk class “membukaFile” ini.. Dengan membuatuhkan sebuah parameter.
        Frame.__init__(self, parent)  //code ini digunakan untuk membuat class ini menjadi sebuah GUI.
        self.window = parent  //code ini digunakan untuk mengoper sebuah nilai dari variabel “parent” ke dalam variabel “window”.
        self.initUI()  //code ini digunakan untuk memanggil sebuah metode dengan nama “initUI”

    def initUI(self):  //code ini digunakan untuk membuat semua metode dengan nama “initUI” yang digunakan untuk menampung code program untuk membuat window dan elemennya.
        self.window.title("File dialog")  //code ini digunakan untuk mengubah judul window nya.
        self.pack(fill=BOTH, expand=1)  //code ini digunakan untuk membuat layout pack.
        self.window.geometry("300x250")  //code ini digunakan untuk mengubah ukuran window nya.

        self.buatMenubar()  //code ini digunakan untuk memanggil sebuah metode dengan nama “buatMenubar”.
        self.buatTempatText()  //code ini digunakan untuk memanggil sebuah metode dengan nama “buatText”.

    def buatMenubar(self):  //code ini digunakan untuk membuat metode dengan nama “buatMenubar”. Yang akan digunakan untuk menampung code program untuk membuat menubar.
        menubar = Menu(self.window)  //code ini digunakan untuk memanggil menubar dari tkinter yang kemudian disimpan ke dalam variabel “menubar”.
        self.window.config(menu=menubar)  //code ini digunakan untukmengkonfigurasikan menu dengna windownya.

        fileMenu = Menu(menubar)  //code inidugnauakan untuk membuat menu baru.
        fileMenu.add_command(label="Open", command=self.bukaFile)  //code ini digunakan membuat submenu dengan perintah membuaka file dan dengan nama “open”.
        menubar.add_cascade(label="File", menu=fileMenu)  //code ini digunakan untuk memberikan nama menu. Yaitu “FIle”.

    def buatTempatText(self):  //code ini digunakan untuk membuat metode dengan nama “buatTempatText”. Yang akan digunakan untuk menampung code program untuk membuat tempat text nya.
        self.txt = Text(self)  //code ini digunakan untuk memanggil tempat Text dari tkinter.
        self.txt.pack(fill=BOTH, expand=1)  //code ini digunakan untuk memasukkan tempat text nya ke dalam window.

    def bukaFile(self):  //code ini digunakan untuk membuat metode dengan nama “bukaFile”. Yang akan digunakan untuk menampung code program untuk membuka file nantinya.
        tipeFile = [('Python files', '*.py'), ('All files', '*')]  //code ini digunakan untuk menentukan tipe file yang akan kita buka nantinya.
        bukaFile = filedialog.Open(self, filetypes=tipeFile)  //code ini digunakan untuk memanggil window pembuka file dari tkinter dengan tipe file yang sudah di tentukan tadi.
        isiFile = bukaFile.show() //code ini digunakan untuk menampilkan window pembuka filenya.

        if isiFile != '':  //code ini digunakan untuk menyeleksi apakah file 
            teks = self.bacaFile(isiFile)
            self.txt.insert(END, teks)

    def bacaFile(self, namaFile):  //code ini digunakan untuk membuat metode dengan nama “bacaFile”. Yang akan digunakan untuk menampung code program untuk membaca file yang akan di buka nantinya.
        f = open(namaFile, "r")  //code ini digunanakan untuk membuka file yang kita pilih. Dan menyimpannya ke dalam variabel “f”.
        teks = f.read()  /code ini digunakan untuk membaca teks yang kita buka dan menyimpan file hasil membacanya ke dalam variabel “teks”.
        return teks  //code ini digunakan untuk mengembalikan teks hasil baca dari teks.

if __name__ == '__main__':  //code ini digunakan untuk memastikan apakah file nya ini dipanggil atau tidak.
    root = Tk()  //code ini digunakan untuk memanggil “Tk” dengan ditampung ke dalam variabel “root”.
    ex = MembukaFile(root)  //code ini digunakan untuk memanggil sebuah class dengan nama “MembukaFile” yang sudah kita buat tadi dan memasukkan “root” sebagai parameter.

    root.mainloop()  //code ini digunakan membuat window yang kita panggil tidak langsung close secara otomatis saat tampil nantinya.



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