PyQT5 Tablodan row silerken bug oluyor

Merhabalar.

Yine ben, baş belanız :smiley:

Öncelikle amacım, tabloda soldaki row ID’ye basarak row’u silmek. İnternetten araştırmam sonucunda bu yöntemi buldum:

    def secileniIptalEt(self):
        index_list = []                                                          
        for model_index in self.arayuz.satisVeKasa_alisverisListesiListBox.selectionModel().selectedRows():       
            index = QtCore.QPersistentModelIndex(model_index)         
            index_list.append(index)                                             

        for index in index_list:                                      
            self.arayuz.satisVeKasa_alisverisListesiListBox.removeRow(index.row())

Çalışıyor fakat bir bug var. Ben herhangi bir ürün ekleyince ve sildiğimde sorun yok; ama başka ürün eklediğimde sorun oluyor.

Üstteki resimdeki gibi deneme amaçlı -silinecek- bir ürün ekledim, ve bunu sildim. Burada bir sıkıntı yok.

Fakat sonradan, yine deneme amaçlı ürün ekledimde gördüm ki: Hem boşluk eklendi, hem de ürün. Bir boşluk oluyor orada. Nedenini anlamış değilim. Neden olabilir bu bug? Nasıl çözebilirim?

Şimdiden teşekkürler.

Ayrıca denediğim diğer yöntem:

        secilenRow = self.arayuz.satisVeKasa_alisverisListesiListBox.currentRow()
      
        self.arayuz.satisVeKasa_alisverisListesiListBox.removeRow(secilenRow)

Yine aynı sonucu alıyorum.

Eğer dün bahsini ettiğim self.row = 0 mantığını kullanıyorsanız, herhangi bir row’u sildikten sonra self.row -= 1 yapmayı deneyin.

1 Beğeni

Tekrardan teşekkür ederim :slight_smile:

1 Beğeni