Muhtemelen 2 şeylerden biri yapmak zorunda kalacaktır:
- Sen
QItemSelectionModel
alt sınıf ve ekleme ve sadece ona 2 sıra gelen öğeler eklemek ve böylece seçilen QModelIndex
es silme için işlevleri uygulamak zorunda kalacak.
Aşağıdaki gibi QItemSelectionModel
yayar alıcı sinyaller için özel bir uygulama olan yapabilirsiniz:
connect(tableWidget->selectionModel(), SIGNAL(selectionChanged(QItemSelection &, QItemSelection &)), selectionHandler, SLOT(updateSelection(QItemSelection &, QItemSelection &)));
selectionHandler
içinde QModelIndex
maddeden satırlar ve sütunlar denetler nesnedir QItemSelection
ve satırın dışında kalan tüm dizinleri kaldırmak istediğiniz kullanıcı aralığını ve sonra da aşağıdakileri kaldırın:
selectionHandler->ignoreSelectionUpdateSignal();
tableWidget->selectionModel()->select(QItemSelection&);
selectionHandler->acceptSelectionUpdateSignal();
ignore
ve accept
selectionChanged
sinyalinin sonsuz döngü işlemine girmediğinizden emin olmanız gerekir.
Tamam, teşekkürler, sadece kullanıcılara çok fazla mesaj seçtikleri mesajını veren basit bir yoldan gideceğim, ama bu soruya cevap veriyor. –