2012-07-03 26 views
6

मेरे पास स्क्रॉलबार के साथ एक टिंकर कैनवास है, और कुछ आइटम जिन्हें मैं क्लिक करता हूं, यह निर्देशांक वापस करना है। (पायथन का उपयोग करना।)पायथन, टिंकर: स्क्रोल करने योग्य कैनवास पर निर्देशांक कैसे प्राप्त करें

यह उन वस्तुओं के साथ ठीक काम करता है जो प्रारंभ में विंडो में दिखाई देते हैं। जब मैं नीचे स्क्रॉल करता हूं, और कैनवास पर आइटम नीचे आते हैं, तो मुझे क्लिक करते समय उनके कैनवास निर्देशांक नहीं मिलते हैं, लेकिन विंडो समन्वयित करती है।

मुझे पूर्ण निर्देशांक कैसे प्राप्त करें, इस बारे में जानकारी नहीं मिल रही है, इसलिए मुझे आश्चर्य है कि अगर कोई यहां जानता है कि यह कैसे करना है?

धन्यवाद।

उत्तर

6

कैनवास विजेट here के लिए प्रलेखन देखें।

खिड़की से बदलने के लिए, निर्देशांक कैनवास canvasx और canvasy तरीकों का उपयोग करने के लिए समन्वय करता है।

यहाँ एक उदाहरण कॉलबैक फ़ंक्शन जो खिड़की के x और y निर्देशांक find_closest()method के माध्यम से उस स्थिति के लिए निकटतम धर्मान्तरित और आइटम प्रिंट है।

def callback(event): 
    canvas = event.widget 
    x = canvas.canvasx(event.x) 
    y = canvas.canvasy(event.y) 
    print canvas.find_closest(x, y) 
+0

आपको बहुत बहुत धन्यवाद! – Yngve

+0

खुशी हुई यह मदद की! – gary

+0

यदि छवि कैनवास से छोटी है, तो उपर्युक्त विधि मुझे पूर्ण कैनवास समन्वय प्रदान करती है, न कि छवि के समन्वय। क्या कोई तरीका है कि मैं कैनवास को भरने के लिए छोटी छवि प्राप्त कर सकता हूं या बिना किसी सीमा के छवि को प्रदर्शित करने के लिए कैनवास का आकार बदल सकता हूं? – varagrawal

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^