Jawaban:
A QWidget
adalah kelas dasar untuk semua kelas drawable di Qt. QWidget
Kelas berbasis apa saja dapat ditampilkan sebagai jendela dengan menampilkannya jika tidak memiliki induk.
A QDialog
didasarkan pada QWidget
, tetapi dirancang untuk ditampilkan sebagai jendela. Ini akan selalu muncul di jendela, dan memiliki fungsi untuk membuatnya berfungsi dengan baik dengan tombol umum pada dialog (terima, tolak, dll.).
QMainWindow
dirancang berdasarkan kebutuhan umum yang dimiliki jendela utama. Ini memiliki tempat yang telah ditentukan untuk bilah menu, bilah status, bilah alat, dan widget lainnya. Itu tidak memiliki tunjangan built-in untuk tombol seperti QDialog
itu.
QMainWindow
daripada hanya kelas dasar QWidget
adalah yang QMainWindow
memiliki QDockWidget
dukungan sedangkan QWidget
sendirian tidak
QWidget : adalah kelas dasar untuk semua elemen GUI lainnya dalam modul QtWidgets. Ini bisa merupakan jendela dengan sendirinya, atau menjadi bagian dari QLayout, atau hanya anggota hierarki orang tua-anak.
QDialog : biasanya digunakan untuk - kejutan! - menampilkan dialog sementara saat input pengguna diperlukan.
QMainWindow : adalah kelas praktis yang dapat digunakan sebagai jendela utama aplikasi Anda. Ini memiliki beberapa fitur bagus bawaan: bilah status, bilah alat, dan bilah menu