Anda di halaman 1dari 4

Nama : Dhimas bagus praditya

NIM : 190411100017
Kelas : pemrograman desktop 3A

Modul 4: Menu
Tugas Pendahuluan
1. Apa fungsi menu dalam sebuah aplikasi ? apa contohnya ?
2. Jelaskan perbedaan fungsi dari QWidget, QMainWindow, QDialog !
3. Berikan contoh pengunaan masing class tersebut !

JAWABAN
1. Menu digunakan sebagai alternatif dari antarmuka baris perintah. Pilihan yang diberikan
oleh menu dapat dipilih dengan menggunakan kursor atau antarmuka pengguna.
Contoh:
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *

import mtk1
import mtk2

app = QApplication(sys.argv)
mWin = QMainWindow()

def menubar():
bar = mWin.menuBar()
file1 = bar.addMenu("rumus matematika")

more1 = file1.addMenu("more")
more1a = QAction("rumus matematika penjumlahan")
more1b = QAction("rumus matematika pengurangan")
more1.addAction(more1a)
more1.addAction(more1b)

more1a.triggered.connect(more1a_action)
more1b.triggered.connect(more1b_action)

mWin.show()
sys.exit(app.exec_())

def more1a_action():
mtk1.window(app)

def more1b_action():
mtk2.window()

if __name__ == '__main__':
menubar()

hasil :

2. 1. QWidget : adalah kelas dasar untuk semua kelas drawable di Qt. QWidgetKelas
berbasis apa saja dapat ditampilkan sebagai jendela dengan menampilkannya jika tidak
memiliki induk.
2. 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 QDialogitu.
3. 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.).

3. 1. Qwidget :
import sys
from PyQt5.QtWidgets import *

def window():
app = QApplication(sys.argv)
win = QWidget()

b1 = QPushButton("Button1")
b2 = QPushButton("Button2")

vbox = QVBoxLayout()
vbox.addWidget(b1)
vbox.addStretch()
vbox.addWidget(b2)
win.setLayout(vbox)

win.setWindowTitle("PyQt")
win.show()
sys.exit(app.exec_())

if __name__ == '__main__':
window()
hasil :

2. QMainWindow :
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *

import mtk1
import mtk2

app = QApplication(sys.argv)
mWin = QMainWindow()

def menubar():
bar = mWin.menuBar()
file1 = bar.addMenu("rumus matematika")

more1 = file1.addMenu("more")
more1a = QAction("rumus matematika penjumlahan")
more1b = QAction("rumus matematika pengurangan")
more1.addAction(more1a)
more1.addAction(more1b)

more1a.triggered.connect(more1a_action)
more1b.triggered.connect(more1b_action)

mWin.show()
sys.exit(app.exec_())
def more1a_action():
mtk1.window(app)

def more1b_action():
mtk2.window()

if __name__ == '__main__':
menubar()

hasil :

3. QDialog :

import sys
from PyQt5.QtWidgets import *

def window():
app = QApplication(sys.argv)
win = QDialog()

b1 = QPushButton("Button1")
b2 = QPushButton("Button2")

vbox = QVBoxLayout()
vbox.addWidget(b1)
vbox.addStretch()
vbox.addWidget(b2)
win.setLayout(vbox)

win.setWindowTitle("PyQt")
win.show()
sys.exit(app.exec_())

if __name__ == '__main__':
window()
hasil :

Anda mungkin juga menyukai