java - Suppress default double-click event in SWT.CHECK Table -
मैं SWT तालिका का उपयोग कर रहा हूँ SWT.CHECK और
SWT.FULL_SELECTION < / code>। मैंने एक आउटपुट समूह को भरने के लिए माउसलेस्टनर जोड़ा, जब कोई उपयोगकर्ता तालिका पंक्ति को डबल-क्लिक करता है हालांकि, एक डबल-क्लिक पंक्ति के चेकबॉक्स को भी टॉगल करेगा। हालांकि मुझे लगता है कि यह लक्ष्य प्लेटफॉर्म (विंडोज) के व्यवहार का इरादा है, मैं चेकबॉक्स को टॉगलिंग से रोकना चाहता हूं।
क्या यह संभव है नहीं चेकबॉक्स को डबल- क्लिक करें?
मुझे पता चल गया है कि तालिका कार्यान्वयन मैं एक चयनलेस्टनर को जोड़ रहा था जो चेकबॉक्स को टॉगल करता था
जब मैंने इसे हटा दिया, तो सबकुछ अपेक्षित काम किया:
श्रोता [] श्रोताओं = table.getListeners (SWT.Selection); अगर (listeners.length & gt; 0) {टाइप किया गया लिस्टनर टाइप लिस्टनर = (टाइप्ल्ड लिस्टनर) श्रोताओं [0]; चयनःलिस्टर चयनलाइज़र = (SelectionListener) typedListener.getEventListener (); table.removeSelectionListener (selectionListener); } एक साफ समाधान नहीं है, लेकिन जब से मुझे पता है कि उस समय ऑब्जेक्ट में केवल एक चयन लिस्टनर है, ऐसा लगता है कि इसे इस तरीके से निकालना उचित है।
Comments
Post a Comment