आप शायद 2 चीजों में से एक करना होगा:
- आप
QItemSelectionModel
उपवर्ग और जोड़ने और चयनित QModelIndex
तों को हटाने ताकि आप केवल इसे करने के लिए 2 पंक्तियों से आइटम जोड़ने के लिए कार्यों को लागू करने के लिए होगा।
आपको लगता है कि QItemSelectionModel
का उत्सर्जन करता है पकड़ने संकेतों के लिए एक कस्टम कार्यान्वयन होने जैसे करके ऐसा कर सकते:
connect(tableWidget->selectionModel(), SIGNAL(selectionChanged(QItemSelection &, QItemSelection &)), selectionHandler, SLOT(updateSelection(QItemSelection &, QItemSelection &)));
selectionHandler
उद्देश्य यह है कि में पंक्तियों और QModelIndex
आइटम के स्तंभ की जांच करता है QItemSelection
और उन सभी इंडेक्स को हटाएं जो पंक्ति सीमा से बाहर हैं जिन्हें आप उपयोगकर्ता रखना चाहते हैं और फिर:
selectionHandler->ignoreSelectionUpdateSignal();
tableWidget->selectionModel()->select(QItemSelection&);
selectionHandler->acceptSelectionUpdateSignal();
ignore
और accept
आपको यह सुनिश्चित करने की ज़रूरत है कि आप अनंत लूप प्रोसेसिंग selectionChanged
सिग्नल में न आएं।
ठीक है, धन्यवाद, मुझे लगता है कि मैं बस एक सरल तरीके से जाऊंगा जो उपयोगकर्ता को एक संदेश देता है अगर वे बहुत अधिक चुनते हैं, लेकिन यह मेरे प्रश्न का उत्तर देता है। –