pyqt ट्यूटोरियल
शुरुआत pyqt से हो रही है
खोज…
टिप्पणियों
PyQt लोकप्रिय क्रॉस-प्लेटफॉर्म Qt एप्लीकेशन फ्रेमवर्क के लिए एक पायथन बाइंडिंग है जिसे आमतौर पर ग्राफिकल एप्लिकेशन बनाने के लिए उपयोग किया जाता है। PyQt4 Qt4 को सपोर्ट करता है और PyQt5 Qt5 को सपोर्ट करता है। यह Qt (Windows, OS X, Linux, iOS और Android) द्वारा समर्थित सभी प्लेटफार्मों पर चलता है। बाइंडिंग को पायथन मॉड्यूल और कक्षाओं के एक सेट के रूप में लागू किया जाता है।
अधिक जानकारी के लिए PyQt वेबसाइट देखें।
PyQt4 की स्थापना
सुझावित विधि स्थापित करें
विंडोज : बाइनरी सेटअप फ़ाइल डाउनलोड और चलाएं।
लिनक्स (डेबियन) : इस कमांड को अपनी कमांड लाइन में चलाएं:
$ apt-get install python-qt4 pyqt4-dev-tools qt4-designer
OS X : इस कमांड को अपनी कमांड लाइन में चलाएं:
$ brew install pyqt
हाथ से स्थापित करें
आप यहां से मैन्युअल कोड को मैन्युअल रूप से डाउनलोड कर सकते हैं और फिर इसे स्वयं स्थापित और कॉन्फ़िगर कर सकते हैं।
अपनी स्थापना का परीक्षण करें
यदि pyqt को सही तरीके से स्थापित किया गया है, तो आप pyuic4
कमांड को चलाने में सक्षम होंगे। यदि इसे सही तरीके से स्थापित किया गया है, तो आपको निम्नलिखित त्रुटि दिखाई देगी:
$ pyuic4
Error: one input ui-file must be specified
स्थापना का काम पूरा हो गया
आपने अब PyQt4 लाइब्रेरी स्थापित की है। PyQt4 के साथ दो उपयोगी एप्लिकेशन भी लगाए गए हैं:
- क्यूटी डिज़ाइनर: ग्राफिकल इंटरफेस के 'ड्रैग एंड ड्रॉप' डिज़ाइन के लिए एक एप्लिकेशन (
.ui
फाइलें बनाता है)। - pyuic4: एक कमांड लाइन एप्लीकेशन जो
.ui
फाइलों को पायथन कोड में बदल सकती है।
एक बुनियादी अनुप्रयोग
निम्न उदाहरण लेबल विजेट, टूलबार और PyQt4 का उपयोग करके स्थिति पट्टी के साथ एक मूल मुख्य GUI विंडो दिखाता है।
import sys
from PyQt4 import QtGui
class App(QtGui.QApplication):
def __init__(self, sys_argv):
super(App, self).__init__(sys_argv)
self.build_ui()
def build_ui(self):
# build a main GUI window
self.main_window = QtGui.QMainWindow()
self.main_window.setWindowTitle('App')
self.main_window.show()
# add a label to the main window
label = QtGui.QLabel('Label')
self.main_window.setCentralWidget(label)
# add a toolbar with an action button to the main window
action = QtGui.QAction('Toolbar action', self)
toolbar = QtGui.QToolBar()
toolbar.addAction(action)
self.main_window.addToolBar(toolbar)
# add a status bar to the main window
status_bar = QtGui.QStatusBar()
status_bar.showMessage('Status bar')
self.main_window.setStatusBar(status_bar)
if __name__ == '__main__':
app = App(sys.argv)
sys.exit(app.exec_())
नमस्ते दुनिया
यह मूल कोड PyQt4 का उपयोग करके "हैलो वर्ल्ड" GUI विंडो लॉन्च करेगा:
import sys
from PyQt4 import QtGui
# create instance of QApplication
app = QtGui.QApplication(sys.argv)
# create QLabel, without parent it will be shown as window
label = QtGui.QLabel('Hello world!')
label.show()
# start the execution loop of the application
sys.exit(app.exec_())
यह PyQt5 का उपयोग करने वाला समान कोड है।
import sys
from PyQt5 import QtWidgets
# create instance of QApplication
app = QtWidgets.QApplication(sys.argv)
# create QLabel, without parent it will be shown as window
label = QtWidgets.QLabel('Hello world!')
label.show()
# start the execution loop of the application
sys.exit(app.exec_())
एक सरल खींचें और ड्रॉप नमूना
3 आसान चरणों में एक साधारण जीयूआई आवेदन करें।
1. डिजाइन
Qt Creator
खोलें, एक नया प्रोजेक्ट बनाएं और अपना डिज़ाइन बनाएं। अपना परिणाम .ui
फ़ाइल के रूप में सहेजें (यहाँ: mainwindow.ui
)।
2. इसी .py फ़ाइल जनरेट करें
अब आप अपने .ui फ़ाइल से एक .py फ़ाइल बना सकते हैं जो आपने पिछले चरण में बनाई थी। अपनी कमांड लाइन में निम्नलिखित दर्ज करें:
$ pyuic4 mainwindow.ui -o GUI.py
यदि उपरोक्त पंक्ति सफलतापूर्वक चलती है तो GUI.py
फ़ाइल बनाई जाती है।
3. पायथन कोड
आप GUI.py
फ़ाइल में अपना खुद का कोड (जैसे सिग्नल और स्लॉट) जोड़ सकते हैं लेकिन उन्हें नई फ़ाइल में जोड़ना बेहतर है। यदि आप कभी भी अपने GUI में परिवर्तन करना चाहते हैं, तो GUI.py
फ़ाइल अधिलेखित कर दी जाएगी। यही कारण है कि कार्यक्षमता को जोड़ने के लिए किसी अन्य फ़ाइल का उपयोग करना ज्यादातर मामलों में बेहतर है।
चलिए नई फाइल को main.py
।
from PyQt4 import QtGui
import sys
import GUI # Your generated .py file
class MyApp(QtGui.QMainWindow, GUI.Ui_MainWindow):
def __init__(self, parent=None):
super(ExampleApp, self).__init__(parent)
self.setupUi(self)
# Connect a button to a function
self.btn_run.clicked.connect(self.run)
def run(self):
# Write here what happens after the button press
print("run")
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
form = ExampleApp()
form.show()
app.exec_()
अब आप main.py
चला सकते हैं और अपने GUI को देख सकते हैं।