Tkinter Python लाइब्रेरी पर आधारित एक क्रॉस-प्लेटफॉर्म tk GUI टूलकिट है जिसका उपयोग GUI-आधारित एप्लिकेशन बनाने और विकसित करने के लिए किया जाता है। Tkinter एप्लिकेशन को एक्जीक्यूटेबल या रननेबल फ़ाइल में बंडल किया जा सकता है जो एप्लिकेशन को Python इंटरप्रेटर या IDLE का उपयोग किए बिना चलाने में सक्षम बनाता है। एप्लिकेशन को बंडल करने की आवश्यकता तब प्राथमिकता बन जाती है जब यूजर कोड का टुकड़ा शेयर किए बिना अन्य लोगों के साथ एप्लिकेशन शेयर करना चाहता है।
Python में विभिन्न प्रकार के मॉड्यूल्स और एक्सटेंशन हैं जो यूजर को रनिंग एप्लिकेशन को एक्जीक्यूटेबल, पोर्टेबल फ़ाइल में बदलने की सुविधा देते हैं। प्रत्येक फ़ाइल अलग प्लेटफॉर्म पर चलती है; इस प्रकार, इसे सभी ऑपरेटिंग सिस्टम के लिए सुलभ बनाने के लिए, Python Windows, MacOS, या Linux-आधारित ऑपरेटिंग सिस्टम के लिए पैकेज प्रदान करता है।
यहां, हम Python में Pyinstaller पैकेज का उपयोग करके एप्लिकेशन को एक्जीक्यूटेबल फ़ाइल में बंडल करेंगे। Pyinstaller इंस्टॉल करने के लिए, आप निम्न कमांड का उपयोग कर सकते हैं -
pip install pyinstaller
एक बार इंस्टॉल हो जाने पर, हम Python स्क्रिप्ट फ़ाइल (जिसमें Tkinter एप्लिकेशन फ़ाइल होती है) को एक्जीक्यूटेबल फ़ाइल में बदलने के चरणों का पालन कर सकते हैं।
Windows ऑपरेटिंग सिस्टम में pip install pyinstaller का उपयोग करके pyinstaller इंस्टॉल करें। अब, निम्न कमांड टाइप करें और एंटर दबाएं।
pyinstaller --onefile -w filename
फ़ाइल (स्क्रिप्ट फ़ाइल) का स्थान जांचें और आपको एक dist फ़ोल्डर मिलेगा जिसमें एक्जीक्यूटेबल फ़ाइल होगी।
जब हम फ़ाइल चलाते हैं, तो यह Tkinter एप्लिकेशन की विंडो प्रदर्शित करेगा।
उदाहरण
इस उदाहरण में, हम एक एप्लिकेशन बनाएंगे जो यूजर से नाम दर्ज करने के लिए कहेगा और उनके नाम से उनका अभिवादन करेगा।
# आवश्यक लाइब्रेरी आयात करें
from tkinter import *
from tkinter import ttk
# Tkinter फ्रेम का इंस्टेंस बनाएं
win =Tk()
# Tkinter फ्रेम की ज्योमेट्री सेट करें
win.geometry("750x250")
# संदेश दिखाने के लिए फंक्शन परिभाषित करें
def myclick():
message="Hello "+ entry.get()
label=Label(frame, text=message, font=('Times New Roman', 14, 'italic'))
entry.delete(0, 'end')
label.pack(pady=30)
# एक फ्रेम बनाएं
frame =LabelFrame(win, width=400, height=180, bd=5)
frame.pack()
# फ्रेम को विजेट को सिकोड़ने या फिट करने से फैलाने से रोकें
frame.pack_propagate(False)
# फ्रेम में एंट्री विजेट बनाएं
entry =ttk.Entry(frame, width=40)
entry.insert(INSERT, "Enter Your Name")
entry.pack()
# बटन बनाएं
ttk.Button(win, text="Click", command=myclick).pack(pady=20)
win.mainloop()
आउटपुट
अब, दिए गए कोड को एक्जीक्यूटेबल फ़ाइल में बदलने के लिए निम्न कमांड चलाएं।
pyinstaller --onefile -w filename
यह डायरेक्टरी (dist फ़ोल्डर) को प्रभावित करेगा जहां सभी एक्जीक्यूटेबल फ़ाइलें स्वचालित रूप से रखी जाएंगी।
जब हम exe फ़ाइल चलाते हैं, तो यह एक विंडो प्रदर्शित करेगा जिसमें एंट्री विजेट होता है। यदि हम "Click" बटन पर क्लिक करते हैं, तो यह स्क्रीन पर अभिवादन संदेश प्रदर्शित करेगा।
