Articles

Signal dan slot pada Qt

Signal dan slot digunakan sebagai komunikasi antar object-object dalam Qt. Signal dan slot ini merupakan fitur penting dari Qt. Signal dan slot ini dikerjakan oleh Qt meta-object system.

Dalam GUI (Graphical User Interfaces) programming kita mungkin pernah mengalami perubahan dalam satu widget akan diikuti oleh perubahan widget lain. Sebagai contoh saat ada widget message box menampilkan pesan 'apakah akan menutup windows', jika kita jawab 'ya' maka message box akan tertutup dan juga windows akan tertutup juga.

Dalam Qt kita akan menggunakan signal dan slot. Sebuah signal dipancarkan oleh sebuah object, kemudian slot dari object lain menerima signal ini. Semua class yang diturunkan dari QObject atau diturunkan dalam subclass QObject memiliki banyak signal dan banyak slot.

Sebuah signal dipancarkan ketika suatu event tertentu terjadi.
Widget-widget dalam Qt mempunyai banyak predefined signal, tetapi kita dapat menambahkan signal tersendiri dengan membuat class turunannya. Suatu slot  merupakan function yang dipanggil sebagai respons terhadap signal tertentu.
Widget-widget dalam Qt memiliki banyak predefined slot, tetapi kita dapat membuat slot kita sendiri dengan membuat class-class turunannya.

Suatu signal bisa memiliki banyak slot, suatu slot jika bisa memantau banyak signal.
Signal tidak perlu tahu object apa yang memiliki slot untuk menerima signal, slot juga tidak perlu tahu object apa memancarkan signal yang dicarinya.
Gambar mengenai signal-signal dan slot-slot dapat dilihat di http://doc.qt.io/qt-5/images/abstract-connections.png atau seperti berikut ini:

Informasi lebih lanjut mengenai Signal dan Slot dalam Qt dapat dibaca di http://doc.qt.io/qt-5/signalsandslots.html .

Kunjungi www.proweb.co.id untuk menambah wawasan anda.

Other Mobile Development Articles:
Property system pada Qt
Meta Object Compiler (moc) pada Qt
Kelas QObject pada Qt
Object Model pada Qt
Memulai pemrograman dengan Qt Quick
Signal dan slot pada Qt
Class-class C++ penting yang disediakan modul Qt QML
Qt meta object system
Integrasi QML dan C++
Menghubungkan C++ ke dalam QML Qt
Menggunakan library C++ Qt