Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Tkinter Python में क्लिक इवेंट पर Canvas पर डॉट कैसे ड्रॉ करें?


एक GUI एप्लिकेशन बनाने के मामले पर विचार करें जैसे कि जब हम माउस बटन के साथ विंडो पर क्लिक करते हैं, तो यह कोऑर्डिनेट्स स्टोर करता है और एक डॉट ड्रॉ करता है। Tkinter इवेंट्स प्रदान करता है जो यूजर को कीज़ या बटन्स को फंक्शन्स के साथ बाइंड करने की अनुमति देता है।

क्लिक इवेंट पर डॉट ड्रॉ करने के लिए, हम इन सामान्य चरणों का पालन कर सकते हैं:

  • एक Canvas विजेट बनाएं और इसे विंडो में प्रदर्शित करने के लिए पैक करें।

  • एक फंक्शन draw_dot() परिभाषित करें जो यूजर द्वारा क्लिक इवेंट करने पर इवेंट के रूप में काम करता है।

  • एक ग्लोबल वेरिएबल बनाएं जो Canvas में क्लिक की संख्या गिनता है।

  • यदि काउंट दो हो जाता है, तो पहले और दूसरे कोऑर्डिनेट्स के बीच एक लाइन ड्रॉ करें।

  • फंक्शन पर पूर्ण नियंत्रण पाने के लिए माउस बटन को कॉलबैक फंक्शन के साथ बाइंड करें।

उदाहरण

# आवश्यक लाइब्रेरी इम्पोर्ट करें from tkinter import * from tkinter import ttk # Tkinter फ्रेम या विंडो का इंस्टेंस बनाएं win=Tk() # विंडो का आकार सेट करें win.geometry("700x350") # दो पॉइंट्स के बीच लाइन ड्रॉ करने के लिए फंक्शन परिभाषित करें def draw_line(event):    x1=event.x    y1=event.y    x2=event.x    y2=event.y    # दिए गए कोऑर्डिनेट्स में एक ओवल ड्रॉ करें    canvas.create_oval(x1,y1,x2,y2,fill="black", width=20) # एक Canvas विजेट बनाएं canvas=Canvas(win, width=700, height=350, background="white") canvas.grid(row=0, column=0) canvas.bind('<Button-1>', draw_line) click_num=0 win.mainloop()

आउटपुट

उपरोक्त कोड चलाकर एक विंडो प्रदर्शित करें। जब आप Canvas के अंदर कहीं भी क्लिक करते हैं, तो यह उस पॉइंट पर एक डॉट ड्रॉ करेगा।

Tkinter Python में क्लिक इवेंट पर Canvas पर डॉट कैसे ड्रॉ करें?


  1. Tkinter Canvas कैसे क्लियर करें? Tkinter Canvas कैसे क्लियर करें?

    Tkinter विंडो में कैनवास जोड़ने का एक तरीका प्रदान करता है और जब हम कैनवास बनाते हैं, तो यह मेमोरी के अंदर कुछ स्टोरेज रैप करता है। Tkinter में कैनवास बनाते समय, यह प्रभावी रूप से कुछ मेमोरी खाता है जिसे क्लियर या डिलीट करने की आवश्यकता होती है। कैनवास क्लियर करने के लिए, हम delete() मेथड का उपयोग

  1. Tkinter Python में Thread का उपयोग कैसे करें? Tkinter Python में Thread का उपयोग कैसे करें?

    Tkinter के साथ, हम Threading का उपयोग करके एक समय में multiple functions call कर सकते हैं। यह एप्लिकेशन में कुछ functions के asynchronous execution को प्रदान करता है। Python में thread का उपयोग करने के लिए, हम threading नामक module import कर सकते हैं और इसकी Thread class को subclass कर सकते हैं। अपन

  1. Python Tkinter में Canvas पर Image Center कैसे करें? Python Tkinter में Canvas पर Image Center कैसे करें?

    मान लीजिए हम Tkinter का उपयोग करके GUI-based एप्लिकेशन बना रहे हैं और हम Tkinter canvas में एक image load करना चाहते हैं। Default रूप से, canvas images को इसकी width और height के अनुसार load करता है। हालांकि, हम Direction value को anchor parameter में pass करके किसी भी direction (N, S, E, W, NS, EW,