Cara menutup window GUI python dengan menggunakan keyboud atau dobleklik

Mvapdg - assalamualaikum wr. wb.

Jumpa lagi nih temen - temen.. Pada kesempatan kali ini saya akan mencoba untuk membahas mengenai GUI python menggunakan PySide lagi nih temen p temen.. Namun, pada postingan kali ini saya tidak akan fokus mengenai tampilannya. Tetapi, saya akan lebih fokus mengenai aksi atau bisa kita katakan sebuah proses. Dan proses tersebut adalah proses untuk menutup sebuah window GUI python yang akan saya munculkan nantinya.

Namun, pada postingan kali ini saya akan membuatnya berbeda mengenai cara untuk menutup windownya.. Karena pada umumnya, apabila kita harus menekan tombol x yang berada di pojok kanan atas window kita atau mengklik tombol exit, maka saya akan mencoba untuk membuat window kita tertutup atau close jika saya menekan tombol “esc” pada keyboard kita dan juga apabila kita meng klik window kita sebanyak dua kali atau bisa disebut juga doubleKlik.

Namun, sebelum saya melanjutkan postingan ini, saya ingin bertanya terlebih dahulu nih.. Apakah PC atau laptop kalian sudah terinstal PySide ? Nah jika belum, silahkan install terlebih dahulu ya.. Agar programnya dapat berjalan seperti apa yang kita inginkan nantinya. Dan bagi kalian yang belum tau cara menginstall PySide, saya sudah membuat postingan tentang tutorial penginstallan nya.. Jika kalian ingin membacanya, kalian bisa membacanya dengan cara KLIK DISINI.

Nah setelah kalian menginstall PySIde nya, yuk langsung saja kita mulai atau kita lanjutkan postingan kali ini...

Cara Membuat Window GUI python menggunakan Library PySide.

Nah sebelum kita membuat proses atau langkah untuk menutup window nya menggunakan keyboard maupun mouse, maka alangkah lebih baiknya jika kalian saya ajak untuk membuat Window GUI sederhana pada bahasa pemrograman Python menggunakan library PySide. Lalu seperti apakah caranya ?  Yuk langsung saja tanpa lama - lama lagi, saya akan menjawab pertanyaan tersebut.. Caranya adalah seperti code program di bawah ini.. Yuk langsung saja di coba dan dilihat hasilnya...

from PySide.QtGui import *


class MyWidget(QWidget):
    # konstruktor
    def __init__(self):
        QWidget.__init__(self)

        self.setGeometry(300, 250, 300, 100)

if __name__ == '__main__':
    import sys
    myApp = QApplication(sys.argv)
    myWidget = MyWidget()
    myWidget.show()
    myApp.exec_()



Nah itu dia programnya temen - temen.. Silahkan kalian coba ya... Namun, kalian yang tidak ingin mencobanya, saya akan mencoba untuk menampilkan hasil nya... Seperti apakah hasilnya kalau kita RUN program diatas ? Untuk menjawabnya, yuk langsung saja kita lihat contoh screenshootnya di bawah ini...


Nah itu lah dia penampakan window nya temen - temen... Jika klian menjalankan nya melalui sistem operasi windows, tentu windownya akan seperti window khas windows tentunya... Dan jika kalian ingin mendapatkan pelajaran lebih lanjut mengenai pembuatan window ini, kalian bisa KLIK DISINI. Disana kalian juga bisa mempelajari cara membuat atau mengubah icon windownya hingga mengubah judulnya. Nah setelah itu saya akan mencoba untuk menjelaskan sekilas dari program diatas... Yuk langsung saja kita simak penjelasan saya dibawah ini..


from PySide.QtGui import *  //code program yang satu ini digunakan untuk mengimpor QtGui dari PySide dengan tanda * sebagai arti akan mengimpor semua elemen nya.

class MyWidget(QWidget):  //code ini digunakan untuk membuat sebuah class yang akan saya isi dengan semua komponen yang akan saya buat pada windownya.
    # konstruktor  //ini sebuah komentar dan tidak akan di baca oleh python
    def __init__(self):  //ini merupakan sebuah konstruktor yang akan membuat class ini menjadi sebuah GUI python.
        QWidget.__init__(self)  //code ini ditunakan untuk memanggil Widget.

        self.setGeometry(300, 250, 300, 100) //code ini digunakan untuk mengatur ukuran windownya menjadi ukuran 300 x 100.


if __name__ == '__main__':  //ini merupakan penyeleksian yang akan menanyakan apakah program ini dipanggil atau tidak.
    import sys  //code ini digunakann untuk mengimpor sys
    myApp = QApplication(sys.argv) //code ini merupakan code wajib yang harus ada.
    myWidget = MyWidget()  //code ini digunakan untuk memanggil class mywidget yang sudah kita buat tadi.
    myWidget.show() //code ini digunakan untuk menampilkan GUI Window yang sudah kita buat tadi.
myApp.exec_() //code ini digunakan agar window kita tidak langsung close saat kita panggil.


Nah itu dia temen - temen penjelasan saya mengenai code program yang sudah saya bagikan diatas.. Yaitu sebuah program yang sangat sederhana untuk membuat sebuah window GUI dari python menggunakan library PySide. Dan saya ingatkan lagi nih.. jika kalian ingin mendapatkan pelajaran lebih lanjut mengenai pembuatan window ini, kalian bisa KLIK DISINI. Disana kalian juga bisa mempelajari cara membuat atau mengubah icon windownya hingga mengubah judulnya.

Cara memasang fungsi close dengan menekan tombol keyboard maupun mengklik mouse pada Window GUI python menggunakan library PySide.

Nah setelah kita bermain - main dengan cara membuat window sederhana pada Python yang menggunakan library PySide, maka sekarang saya akan mengajak kalian menambah kan window yang sudah kita buat tadi dengan fitur - fitur lain. Termasuk memasang fitur close dengan keyboard atau mouse yang menjadi pokok bahasan pada postingan saya kali ini.

Lalu seperti apakah caranya temen - temen ? Untuk menjawabnya, Yuk langsung saja kita simak sama - sama code program yang akan saya bagikan di bawah ini...

#mengimport PySide
from PySide.QtGui import *
from PySide.QtCore import *

class MyWidget(QWidget):
    #konstruktor
    def __init__(self):
        QWidget.__init__(self)

        self.jendela()
       
        self.setWindowTitle("Coba Event")
        self.setGeometry(300,250,300,100)

    def jendela(self):
        self.myLayout= QVBoxLayout()
       
        self.myLabel= QLabel("Tekan esc atau klik 2x untuk keluar")
        self.myLabel.setAlignment(Qt.AlignCenter)
        self.myLayout.addWidget(self.myLabel)

        self.setLayout(self.myLayout)
       
    #fungsi
    def keyPressEvent(self, event):
        if event.key() == Qt.Key_Escape:
            self.close()
           
    def mouseDoubleClickEvent(self,event):
        self.close()


if __name__== '__main__':
    import sys
    myApp = QApplication(sys.argv)
    myWidget = MyWidget()
    myWidget.show()
    myApp.exec_()



Nah itu dia temen - temen contoh programnya... Cukup panjang ya.. Hehe maklum saja temen - temen... Karena pada program diatas saya sudah menambahkan beberapa widget seperti teks yang akan tampil ditengah window kita. Namun, fungsi utamanya yang akan menjadikan window kita akan close ketika kita mengklik dua kali adalah fungsi “mouseDoubleClickEvent” dan untuk menambahkan fungsi close ketika kita menekan tombol “esc” pada keyboard, adalah fungsi “keyPressEvent”. Nah setelah melihat code programnya, lalu seperti apakah tampilah GUI yang akan dihasilkan dari program diatas ? Nah untuk mengetahuinya, yuk lansung saja kita lihat screenshoot yang ada di bawah ini...


Nah itu dia temen - temen tampilannya.. Untuk melihat hasilnya, kalian bisa menekan tombol “esc” pada keyboard atau dengan cara mengklik mouse dua kali. Jik work atau berfungsi, Maka window tersebut akan close atau hilang.


Penjelasan mengenai program pembuatan fungsi close menggunakan mouse dan keyboard pada window GUI python menggunakan PySIde.

Nah setelah kita membuat atau mencoba program untuk membuat fungsi close menggunakan keyboard dan mouse, serta sudah melihat hasilnya, maka sekarang saya akan mencoba untuk menjelaskan program yang sudah saya bagikan di atas.. Dengan harapan dapat membuat kalian lebih paham dengan program yang sudah saya bagikan tersebut.. Yuk langsung saja kita simak penjelasan saya di bawah ini...


#mengimport PySide //ini merupakan sebuah komentar. Jadi tidak akan di baca oleh python.
from PySide.QtGui import *  //code program yang satu ini digunakan untuk mengimpor QtGui dari PySide dengan tanda * sebagai arti akan mengimpor semua elemen nya.

class MyWidget(QWidget):  //code ini digunakan untuk membuat sebuah class yang akan saya isi dengan semua komponen yang akan saya buat pada windownya.
    # konstruktor  //ini sebuah komentar dan tidak akan di baca oleh python
    def __init__(self):  //ini merupakan sebuah konstruktor yang akan membuat class ini menjadi sebuah GUI python.
        QWidget.__init__(self)  //code ini ditunakan untuk memanggil Widget.

        self.jendela()  //code ini digunakan untuk memanggil metode atau fungsi yang bernama jendela.

        self.setGeometry(300, 250, 300, 100) //code ini digunakan untuk mengatur ukuran windownya menjadi ukuran 300 x 100.
        self.setWindowTitle("Coba Event")  //code ini digunakan untuk memberi atau mengubah judul window kita nantinya.

    def jendela(self):  //ini merupakan sebuah metode atau fungsi yang berfungsi untuk menampung  komponen jendela yang akan kita tampilkan nantinya.
        self.myLayout= QVBoxLayout()  //code ini digunakan untuk memanggil sebuah layout vertikal yang bernama “QVBoxlayout”. Lalu menampungnya di dalam variabel “mylayout”

        self.myLabel= QLabel("Tekan esc atau klik 2x untuk keluar")  //code ini digunakan untuk memanggil label teks yang akan kita tampilkan nantinya. Dengan teks yang berada di dalam tanda petik “
        self.myLabel.setAlignment(Qt.AlignCenter)  //code ini digunakan untuk menempatkan teks yang akan saya tambah kan tadi agar berada di tengah window nantinya.
        self.myLayout.addWidget(self.myLabel)  //code ini bertugas untuk menambahkan atau memasukkan teks tadi ke dalam window.

        self.setLayout(self.myLayout)  //code ini mengubah keseluruhan tampilan menjadi vertikal layout.

    #fungsi  //ini komentar
    def keyPressEvent(self, event):  //fungsi atau metode inilah yang membuat window kita akan close jika kita menekan tombol “esc” pada keyboard.
        if event.key() == Qt.Key_Escape:  //code ini digunakan untuk mengecek setiap tombol yang kita tekan. Jika tombol yang kita tekan merupakan  tombol “esc” maka akan menjalan kan code di bawah nya.
            self.close()  //code ini merupakan perintah close atau menutup window jika kita menekan tombol “esc”.

    def mouseDoubleClickEvent(self,event):  //dan fungsi ini yang mengecek apakah kita mengklik dua kali atau tidak. Jika kita mengklik dua kali maka akan menjalankan program yang ada di dalamnya.
        self.close() //ini juga digunakan untuk menutup atau close window.


if __name__ == '__main__':  //ini merupakan penyeleksian yang akan menanyakan apakah program ini dipanggil atau tidak.
    import sys  //code ini digunakann untuk mengimpor sys
    myApp = QApplication(sys.argv) //code ini merupakan code wajib yang harus ada.
    myWidget = MyWidget()  //code ini digunakan untuk memanggil class mywidget yang sudah kita buat tadi.
    myWidget.show() //code ini digunakan untuk menampilkan GUI Window yang sudah kita buat tadi.

myApp.exec_() //code ini digunakan agar window kita tidak langsung close saat kita panggil.


Nah itu dia temen - temen penjelasannya.. Semoga kalian dapat memahaminya dengan mudah ya... Serta tentu saja dapat mewujudkan tujuan saya yang sempat saya katakan sebelum saya menjelaskannya.. Yaitu agar kalian dapat memahami program yang telah saya bagikan diatas...

Dan sekian dulu ya temen - temen pembahasan saya mengenai cara menambahkan fungsi close menggunakan mouse dan keybourd pada postingan ini.. Saya harap postingan ini dapa memberikan kalian referensi pembelajaran.. Namun, jika ada yang kurang di pahami dari postingan saya kali ini, kalian bisa menanyakan nya di kolom komentar di bawah ini ya.. Namun, sebelum kalian bertanya, saya sarankan kalian untuk membaca dan memahaminya secara berulang - ulang.. Dan jika kalian memang benar - benar tidak paham, atau penjelasan saya ada yang sedikit ngawur dan tidak jelas, kalian bisa langsung menanyakannya.... Dan selain melalui kolom komentar, kalian juga bisa menanyakannya di kontak form yang linknya terdapat pada footer blog ini.. Atau berada di paling bawah halaman ini...

Oya jika kalian merasa postingan ini bermanfaat,  jangan lupa untuk di share ya temen - temen.. Biar temen kalian juga bisa merasakan manfaatnya... Terimakasih sudah berkunjung dan membaca postingan saya.. Dan terimakasi banyak saya sampaikan bagi kalian yang menyempatkan waktu untuk share postingan ini.. Oya mohon maaf ya jika ada atau terdapat kekurangan maupun ada yang kurang jelas... Karena saya masih belajar juga.. Hehe jadi harap maklum ya... Sekian.

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