Cara menghubungkan Button dan status Bar pada GUI python menggunakan PySide

Belajarpython – asslamualaikum wr. wb.

Jumpa lagi nih temen – temen.. pada kesempatan kali ini saya akan mencoba untuk membuat tutorial GUI python dari library pyside nih… nah sebelum saya melanjutkan postingan ini, saya ingin bertanya sudahkah anda mengetahui PySide ? nah jika anda belum mengtahui apa itu PySide, maka postingan ini akan saya mulai postingan kali ini dari penjelasan mengenai PySide…

PySide merupakan sebuah Library dari Bahasa pemrograman python. Library tersebut di gunakan untuk membuat sebuah GUI atau yang biasa kita sebut sebagai Grafikal User Interface. Atau di dalam Bahasa Indonesia, biasa disebut sebagai “antar muka”. nah antar muka ini lah yang menghubunkan antara user dengan sebuah proses aplikasi. Atau lebih mudahnya kita bisa mengatakan GUI itu sebagai tampilan dari sebuah aplikasi… jadi intinya, PySide ini digunakan oleh python untuk membangun sebuah tampilan aplikasi…

Nah udah taukan apa itu PySide ? hehe semoga iya saja dah… nah bagi kalian yang belum menginstall PySide, kalian juga bisa membaca tutorial penginstalan Pyside ini DISINI. Tutorial instalasi nya saya jamin anti ribet dah.. hehe jadi jangan lupa di ikuti tutorial instalasi nya ya..

Setelah kita mengetahui apa itu PySide serta telah menginstallnya, yuk langsung saja kita balik lagi ke pembahasan utama postingan ini… nah pada postingan kali ini saya akan membagikan sebuah code program untuk menampikan sebuah tombol yang akan saya hubungkan dengan sebuah status bar… sudah tau apa itu status bar ? jika belum, kalian bisa melihat atau membaca postingan saya yang serupa.. yaitu tentang statusbar yang sudah saya posting sebelumnya.. kalian bisa membacanya DISINI.

Skema program yang akan saya bagikan pada postingan kali ini (tombol dan status bar).

Seperti yang sudah saya kataka sebelumnya, pada postingan kali ini saya akan membagikan sebuah program yang akan menampilkan tombol dan status bar pada sebuah GUI window Python menggunakan PySide. Nah kebetulan, saya akan menghubungkan tombol yang sudah saya buat dengan sebuah status bar yang nantinya akan tampil di pojok kiri bawah window kita nantinya.

Maksud dari penghubungan ini adalah, ketika saya klik tombol yang sudah saya buat, maka akan menampilkan sebuah statusbar tertentu. Sebenarnya cukup simple dan mudah ya… namun jika kita tidak mengetahui caranya, tentu akan sangat susah untuk kita wujudkan… apalagi kita tidak hafal atau tidaak tau syntax dari Bahasa pemrogramannya.. akan menambah kesulitan kalian untuk belajar… oleh sebab itu, saya akan mencoba untuk membagikan contoh source code atau code program yang akan membuat sebuah tombol dan status bar sekaligus menghubungkannya. Dengan harapan dapat membantu atau memberikan referensi bagi kalian yang membutuhkan refers untuk berajar.

Code program untuk membuat button atau tombol dan status bar serta cara menghubungkannya.

nah setelah kita membahas panjang lebar dan bertele – tele mengenai apa yang akan kita bahas pada postingan kali ini, maka selanjutnya saya akan mencoba untuk memberikan source code atau code program untuk membuat button atau tombol dan status bar berserta pengubung nya… yuk langsung saja kita simak code program atau source codenya di bawah ini..


import sys
from PySide import QtGui, QtCore

class tombolstatusbar(QtGui.QMainWindow):
    
    def __init__(self):
        super(tombolstatusbar, self).__init__()
        
        self.initUI()
        
    def initUI(self):
        tombol1 = QtGui.QPushButton("tombol 1", self)
        tombol1.move(30, 50)

        tombol2 = QtGui.QPushButton("tombol 2", self)
        tombol2.move(150, 50)
      
        tombol1.clicked.connect(self.ketikaDiKlik)            
        tombol2.clicked.connect(self.ketikaDiKlik)
        
        self.statusBar()
        
        self.setGeometry(300, 300, 290, 150)
        self.setWindowTitle('Tombol dan status bar')
        self.show()
        
    def ketikaDiKlik(self):
        sender = self.sender()
        self.statusBar().showMessage('anda telah menekan ' + sender.text())
        
def main():
    app = QtGui.QApplication(sys.argv)
    ex = tombolstatusbar()
    sys.exit(app.exec_())


if __name__ == '__main__':
    main()


nah itu dia temen – temen program dari apa yang sudah saya jelaskan sebelumnya.. yaitu tentang penambahan button dan status bar beserta penghubungan antara keuanya. Gimana programnya cukup panjang tidak ? apakah mudah di pahami ? yang bisa menjawab pertanyaan – pertanyaan tersebut hanyalah anda sebagai pembaca. Jadi jawbamua bisa berfariasi tentunya… nah setelah kita melihat programnya, lalu seperti apa sih tampilan GUI yang akan dihasilkan setelah kita menjalankan program diatas ? nah tanpa perlu saya jawab, saya akan menampilkan contoh screenshoot GUI window yang akan di hasilkan dari program di atas.. yuk langsung saja kita simak screenshootnya di bawah ini…


Nah itu dia GUI yang akan dihasilkan setelah kita menjalankan program diatas.. nah bisa kita lihat tulisan yang ada pada pojok kiri bawah jendela pada screenshoot diatas. Ketika pertama kali window tersebut muncul, maka tidak ada tulisan seperti yang terlihat digambar tersebut.. namun setelah saya meng-klik “tombol 1” maka status bar akan menampilkan tulisan yang ada pada screenshoot terebut. Yaitu “anda telah menekan tombol 1” dan sama halnya ketika kalian mengklik “tombol 2”. Maka yang akan tampil di status bar adalah “anda telah menekan tombol 2”. Nah sudah paham kan temen – temen ? semoga saja.. hehe

Penjelasan dari program penambahan tombol dan status bar beserta hubungan nya.

Nah setelah saya membagikan program penambahan tombol dan status bar, maka selanjutnya saya akan mencoba untuk menjelaskan program yang telah saya bagikan tersebut.. dengan harapan dapat membantu pemahaman kalian.. agar kalian bisa memanfaatkannya ketika membuat sebuah program nantinya… nah seperti apakah penjelasnnya ? untuk menjawab pertanyaan tersebut, yuk langsung saja kita simak sama – sama penjelasan saya mengenai program diatas…

import sys //code ini digunakan untuk  mengimpor sys
from PySide import QtGui, QtCore  //code ini digunakan untuk  mengimpor QtGui dan QtCore dari library PySide.

class tombolstatusbar(QtGui.QMainWindow):  //ini merupakan sebuah class yang akan menampung semua elemen program untuk pembuatan GUI window kita nantinya.

    def __init__(self): //ini merupakan metode atau konstruktor yang akan secara otomatis di jalankan ketika class “tombolstatusbar” dipanggil.
        super(tombolstatusbar, self).__init__()//code ini digunakan untuk membuat sebuah class “tombolstatusbar” sebagai GUI.

        self.initUI()//code ini merupakan code yang memiliki fungsi untuk memanggil metode “initUI”. Dengan tambahan “self” yang menandakan metode ini berada pada class ini sendiri.

    def initUI(self): //ini merupakan metode yang saya buat untuk menampung code program untuk membuat sebuah GUI window yang akan kita tampilkan nantinya.
        tombol1 = QtGui.QPushButton("tombol 1", self)  //code ini digunakan untuk membuat tombol. Dengan nama “tombol 1” dan telah saya tampung kedalam variabel “tombol1”.
        tombol1.move(30, 50) //code ini digunakan untuk memindahkan “tombol 2” ke titik “150 . 50”

        tombol2 = QtGui.QPushButton("tombol 2", self)  //code ini digunakan untuk membuat tombol. Dengan nama “tombol 2” dan telah saya tampung kedalam variabel “tombol2”.
        tombol2.move(150, 50)  //code ini digunakan untuk memindahkan “tombol 2” ke titik “150 . 50”

        tombol1.clicked.connect(self.ketikaDiKlik)  //code ini digunakan untuk memberikan perintah terhadap “tombol 1” ketika tombol ini kita klik. Yaitu memanggil metode “ketikaDiKlik”.
        tombol2.clicked.connect(self.ketikaDiKlik) //sama seperti code sebelumnya, code ini digunakan untuk memberikan perintah terhadap “tombol 1” ketika tombol ini kita klik. Yaitu memanggil metode “ketikaDiKlik”.

        self.statusBar()  //code ini digunakan untuk menampilkan window yang sudah kita buat dan kita susun tadi.

        self.setGeometry(300, 300, 290, 150)  //ini digunakan untuk mengatur ukuran window yang akan kita tampilkan nantinya.
        self.setWindowTitle('Tombol dan status bar') //code ini digunakan untuk membuat judul window yang akan kita tampilkan nanti menjadi “tombol dan status bar”. Tentu kalian bisa merubahnya sesuka hati kalian.
        self.show()  //code ini digunakan untuk menampilkan window beserta elemen – elemennya yang sudah kita buat sebelumnya.
    def ketikaDiKlik(self):  //ini merupakan metode yang menampung perintah menampilkan  status bar ketika tombol di klik.
        sender = self.sender() //code ini digunakan untuk mengambil teks atau nama tombol yang kita klik dan menyimpannya di dalam variabel “sender”.
        self.statusBar().showMessage('anda telah menekan ' + sender.text()) //ini digunakan untuk menampilkan  status bar dengan teke “anda telah menekan” yang ditambah dengan nama tombol yang sudah di klik.

def main() :  //ini merupakan metode yang menampung code – code program yang harus ada dalam pembuatan GUI python terutama saat menggunakan library PySide.
                app = QtGui.QApplication(sys.argv) //code ini merupakan code wajib yang harus ada dalam pembuatan Window GUI python menggunakan library PySide.
                cth = tombolstatusbar()  //code ini digunakan untuk memanggil class “tombolstatusbar” yang sudah kita buat tadi.
                sys.exit(app.exec_())  //code ini merupakan code wajib yang harus ada dalam pembuatan Window GUI python menggunakan library PySide.

if __name__ == '__main__' :  code ini merupakan sebuah kondisi yang akan mengecek apakah program ini di jalankan atau tidak.

                main() //code ini merupakan pemanggilan metode “main” yang sudah kita buat tadi.



Nah itu dia temen – temen penjelasan saya mengenai program yang sudah saya bagikan sebelumnya.. semoga kalian bisa memahami nya dengan mudah dan cepat tentunya hehe.. karena saya sudah berusaha semampu saya untu menjelaskan origra tersebut dengan sejelas yang saya bisa.. kini waktunya kalian yang harus berusaha untuk memahami penjelasan diatas… jika kalian belum bisa memahaminya, silahkan baca berulanga – ulang.. saya yakin pada akhirnya kalian akan memahminya…

namun jika kalian memang sudah buntu dan tidak mampu lagi  untuk memahaminya, maka kalian juga bisa kok menanyakan point yang tidak kalian mengerti secara langsung pada kolom komentar yang sudah saya sediakan di bawah postingan in.. atau sebenarnya kalian juga bisa langsung menghubungi saya melalui tempat atau laman contact form yang sudah saya sediakan di blog ini.. silahkan cari pada pbagian footer blog ini atau halaman paling bawah di postingan ini…


Iya Sekian dulu ya temen – temen pembahasan serta sajian saya pada postingan saya kali ini… semoga postingan saya yang satu ini bisa membantu kalian dalam pembelajaran… oya jangan lupa bagikan postingan ini ya..  terutama jika postingan ini sangat membantu kalian atau kalian menyukai postingan ini… dan serta sebagai salah satu support atau dukungan kalian terhadap saya untuk teteap aktif menulis postingan.. dan tentu kalian dapat menikmati konten – konten atau postingan saya yang selanjutnya…

Dan yang terakhir saya ucapkan terimakasih pada kalian yang sudah berkunjung pada blog saya… dan terlebih yang sudah membaca postingan ini sampai habis.. hehe dan ucapan terimakasi saya yang paling besar adalah buat kamu yang udah share atau membagikan postingan saya ke temen – temen kalian di social media ataupun secara offline… kurang lebihnya saya mohon maaf dan mohon di maklumi ya..  karena saya juga masih belajar dan tentu saja tidak luput dari rasa salah dan khilah.. oke.. sekian dulu ceramah nya.. hehe

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