Pyqt5 Veritabanı Arama İşlemi Tab Aktif Etme

Merhaba.

Projemde arama işlemi yapıyorum.
Şöyle bir soru sormak istiyorum.

Kitaplar tabı veya İstatistikler tabı aktifken Üye arama işlemi yapacağım diyelim.
Ara butonuna tıkladığımda Üyeler tabının aktif olmasını istiyorum.

Birde bunun tam tersi Üyeler veya İstatistikler tabı aktifken kitap aradığımda kitaplar tabını aktif etmek istiyorum.

Bunu nasıl yaparız?

main.py

# Ara Butonu
self.pushButtonAra.clicked.connect(self.AramaYap)

#Tab Widgetinin Genel İsmi
self.tabWidgetContent

# Kitaplar Tabı Menu İsmi
self.tabKitaplar

# Üyeler Tabı Menu İsmi
self.tabUyeler

# İstatistikler Tabı Menu İsmi
self.tabIstatistikler

# AramaYap Fonksiyonu
def AramaYap(self):
	
	#Seçenekler ComboBox
	secenek = self.comboBoxAraSecenek.currentText()
	
	# Aranan Kelime LineEdit
	aranan = self.lineEditAra.text()

	if(aranan == ""):
		QMessageBox.warning(self, "Uyarı", "Lütfen boş göndermeyin!")
	else:
		if(secenek == "- Seçiniz -"):
			QMessageBox.warning(self, "Uyarı", "Lütfen aranacak seçeneği seçiniz!")
		else:
			arananSecenek = None

			if(secenek == "Kitap"):
				arananSecenek = 1

			if(secenek == "Üye"):
				arananSecenek = 2

			#Sql.py dosyasındaki AramaYap Fonksiyonu
			sonuclar = AramaYap(aranan,arananSecenek)

			if(sonuclar == []):
				QMessageBox.warning(self, "Bilgi", aranan + " bulunamadı!")
			else:
				print(sonuclar)

Sql.py

def AramaYap(aranan,secenek):

    if (secenek == 1):
        sonuc = db.execute("SELECT kitap_id, kitap_adi, kitap_yazari FROM kitaplar WHERE kitap_adi LIKE ? or kitap_yazari LIKE ?",('%' + aranan + '%', '%' + aranan + '%')).fetchall()
    elif (secenek == 2):
        sonuc = db.execute("SELECT * FROM uyeler WHERE uye_adi LIKE ?",('%' + aranan + '%',)).fetchall()
    else:
        pass

    return sonuc
      • ÇÖZÜM
import sys
from PyQt5.QtWidgets import *
 
class TabAktif(QWidget):
    def __init__(self):
        super().__init__()

        self.hbox = QHBoxLayout(self)

        self.tabWidget = QTabWidget()
        self.comboSecenek = QComboBox()
        self.buttonAra = QPushButton("Ara")

        self.tabWidget.addTab(QWidget(), "Kitap")
        self.tabWidget.addTab(QWidget(), "Üye")
        self.tabWidget.addTab(QWidget(), "İstatistik")

        self.comboSecenek.addItems(["-Seçiniz-", "Kitap", "Üye", "İstatistik"])

        # Burda lambda fonksiyonuyla comboBox'daki güncel itemin indexini gönderiyoruz Arama fonksiyonuna
        self.buttonAra.clicked.connect(lambda: self.Arama(self.comboSecenek.currentIndex()))

        self.hbox.addWidget(self.tabWidget)
        self.hbox.addWidget(self.comboSecenek)
        self.hbox.addWidget(self.buttonAra)

        self.resize(600,400)
        self.show()
 
    
    def Arama(self, i):

        # Burda tabwidget ilk indexi 0 iken
        # comboSecenek'de "-Seçiniz-" seçeneğinden dolayı kitap seçeneğinin index'i 1 dir
        # bundan dolayı tabWidgeti'nin ilk seçeneği ile eşitlemek için "i-1" kullandık

        if i > 0:
            #tabwidgetin güncel tabını index yardımıyla ayarlıyoruz
            self.tabWidget.setCurrentIndex(i - 1)

        # Arama işlemi kodları...

uygulama = QApplication(sys.argv)
pencere = TabAktif()
sys.exit(uygulama.exec_())