2010-06-11 6 views
11

के साथ ईवेंट मेरे आवेदन में मैं वस्तुओं को समूहबद्ध करने के लिए QGraphicsItemGroup का उपयोग करना चाहता हूं।
मैंने इसके साथ थोड़ा सा खेला और इसका उपयोग नहीं किया क्योंकि जब मैं घटनाओं को पकड़ना चाहता हूं, तो ईवेंट एक साथ विलय हो जाते हैं लेकिन मैं विशिष्ट बच्चे को विशिष्ट बच्चे के साथ संभालना चाहता हूं।
मैं इसे कैसे प्राप्त कर सकता हूं?QGraphicsItemGroup

उत्तर

12

आपको QGraphicsItemGroup::setHandlesChildEvents(false) पर कॉल करने की आवश्यकता है। यह घटना को संभालने की कोशिश कर रहे QGraphicsItemGroup को रोकता है, और बच्चे को इसके बजाय QGraphicsItem एस को संभालता है।

3

मुझे लगता है कि यह QGraphicsItemGroup का बिंदु है। प्रलेखन से निर्णय लेना, यह एक साथ कई वस्तुओं को स्थानांतरित करने और बदलने के लिए सरल है। निम्नलिखित मामले की कल्पना करें: उपयोगकर्ता किसी एप्लिकेशन में कई आइटमों के आस-पास एक चयन आयताकार खींचता है क्योंकि वह उन सभी को स्थानांतरित करना चाहता है। शायद आप जो चाहते हैं वह वस्तुओं का पदानुक्रम बनाना है, उदा। कई बच्चे वस्तुओं के साथ एक मूल आइटम है। इस तरह आप प्रत्येक आइटम के लिए व्यक्तिगत घटनाएं प्राप्त करेंगे। यह QGraphicsItem::setParentItem() पर कॉल करके पूरा किया जा सकता है;

+2

हर बार जब मैंने QGraphicsItemGroup का उपयोग करने का प्रयास किया है, तो मैं सादे माता-पिता के रिश्तों में वापस चला गया। दस्तावेज इस पर बहुत स्पष्ट नहीं है –