के दौरान एक GtkTreeView में नया चयन प्राप्त करें, जब भी मैं gtk.TreeView
परिवर्तनों का चयन करता हूं और जब यह करता है, तो फ़ंक्शन w/इस जानकारी को कॉल करने के लिए जब भी मैं पता लगाना चाहता हूं। एक ही रास्ता मैं इसे अब तक ऐसा करने के लिए मिल गया है इन सभी संकेतों को संलग्न करने के लिए है:सिग्नल
...
self.sitterView.connect("cursor-changed", self.selectionChanged)
self.sitterView.connect("unselect-all", self.selectionChanged)
self.sitterView.connect("toggle-cursor-row", self.selectionChanged)
self.sitterView.connect("select-all", self.selectionChanged)
...
def selectionChanged(self, treeview):
foo(self.sitterView.get_selection().get_selected())
हालांकि, यह चयन मैं कॉलबैक "देरी" है से प्राप्त की तरह लगता है। यही है, यह पिछले कॉलबैक पूरा होने के बाद चयन दिखाता है। उदाहरण के लिए, यदि मैं निरंतर CTRL + पंक्ति पर क्लिक करता हूं, जब पंक्ति को अचयनित से चुनने के लिए जाता है, तो foo को कोई चयन नहीं दिया जाता है, और जब पंक्ति को चयनित से चुनने के लिए चुना जाता है, तो इसे एक चयन दिया जाता है। अगर मैं get_selection().get_selected()
को दूसरी बार कॉल करता हूं, हालांकि, मुझे सही चयन मिलता है। कोई विचार यह कैसे डब्ल्यू/यह सौदा करने के लिए?
ओह भयानक! मुझे एहसास नहीं हुआ कि चयन वस्तु नहीं बदलेगी, और यह स्वयं के सिग्नल था। मुझे लगता है कि मैं यही देख रहा हूं। – Claudiu
बहुत अच्छा काम करता है, फिर से टाइप करें – Claudiu
क्या इस सिग्नल को ग्लैड से जोड़ने का कोई तरीका है? – umpirsky