PyQt5 is a set of Python bindings for the cross-platform application framework that combines all the advantages of Qt and Python. With PyQt5, you can include Qt libraries in Python code, enabling you to write GUI applications in Python. In other words, PyQt allows you to access all the facilities provided by Qt through Python code. Since PyQt5 depends on the Qt libraries to run, when you install PyQt5, the required version of Qt is also installed automatically on your machine.
Before starting please ensure that you have installed PyQt5 or install it by running this command.
sudo pip3 install PyQt5
It will install PyQt5 libraries as well as the PyQt5-sip library.
Let’s start by importing all the required libraries and classes.
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QMessageBox
from PyQt5.QtGui import QIcon
from PyQt5.QtCore import pyqtSlot
The PyQt5 QMessageBox is the class that we need to display the message box. Next, we will make a MessageBox class and override its constructor function.
class MessageBox(QWidget):
def __init__(self):
super().__init__()
self.title = 'PyQt5 messagebox - pyblog.in'
self.left = 10
self.top = 10
self.height = 400
self.width = 640
self.initUI()
def initUI(self):
self.setWindowTitle(self.title)
self.setGeometry(self.left, self.top, self.width, self.height)
buttonReply = QMessageBox.question(self, 'PyQt5 message box', "Do you like PyQt5?", QMessageBox.Yes | QMessageBox.No | QMessageBox.Cancel, QMessageBox.No)
if buttonReply == QMessageBox.Yes:
print("Yes clicked")
elif buttonReply == QMessageBox.Cancel:
print("Cancel Clicked")
else:
print("No clicked")
self.show()
here as you can see that we have implemented various outcomes depending upon the output of the MessageBox. Lastly we will make an object of the class and run the file.
if __name__ == '__main__':
app = QApplication(sys.argv)
message = MessageBox()
sys.exit(app.exec_())
Now we run the file using.
python3 message.py
QMessageBox.Cancel | QMessageBox.Ok | QMessageBox.Help |
QMessageBox.Open | QMessageBox.Save | QMessageBox.SaveAll |
QMessageBox.Discard | QMessageBox.Close | QMessageBox.Apply |
QMessageBox.Reset | QMessageBox.Yes | QMessageBox.YesToAll |
QMessageBox.No | QMessageBox.NoToAll | QMessageBox.NoButton |
QMessageBox.RestoreDefaults | QMessageBox.Abort | QMessageBox.Retry |
QMessageBox.Ignore |
Please Note that The exec_() method has an underscore because exec is a Python keyword.
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QMessageBox
from PyQt5.QtGui import QIcon
from PyQt5.QtCore import pyqtSlot
class MessageBox(QWidget):
def __init__(self):
super().__init__()
self.title = 'PyQt5 messagebox - pyblog.in'
self.left = 10
self.top = 10
self.height = 400
self.width = 640
self.initUI()
def initUI(self):
self.setWindowTitle(self.title)
self.setGeometry(self.left, self.top, self.width, self.height)
buttonReply = QMessageBox.question(self, 'PyQt5 message box', "Do you like PyQt5?", QMessageBox.Yes | QMessageBox.No | QMessageBox.Cancel, QMessageBox.No)
if buttonReply == QMessageBox.Yes:
print("Yes clicked")
elif buttonReply == QMessageBox.Cancel:
print("Cancel Clicked")
else:
print("No clicked")
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
message = MessageBox()
sys.exit(app.exec_())
In Python, the print() function is a fundamental tool for displaying output. While printing simple…
Python is a versatile programming language known for its simplicity and flexibility. When working on…
PDF (Portable Document Format) files are commonly used for sharing documents due to their consistent…
PDF (Portable Document Format) files are widely used for document exchange due to their consistent…
Python is a high-level programming language known for its simplicity and ease of use. However,…
Object-Oriented Programming (OOP), iterators, generators, and closures are powerful concepts in Python that can be…
This website uses cookies.