"
#-----------MODÜLDAHİLİ---------#
import sys
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import*
from galeri import*
from hakkında1 import*
#-------------------------------#
#--------PENCERE OLUŞTURMA------#
uygulama=QApplication(sys.argv)
anapen=QMainWindow()
dosya=Ui_MainWindow()
dosya.setupUi(anapen)
anapen.show()
#--------Hakkında------#
hakkında=QDialog()
dosya1=Ui_HAKKINDA()
dosya1.setupUi(hakkında)
#------------sqlite3-------------------#
import sqlite3
bağlantı=sqlite3.connect(“autogaleri.db”)
işlem=bağlantı.cursor()
sorgutable=(“CREATE TABLE IF NOT EXISTS GALERİ(
Id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
AraçAdı TEXT NOT NULL,
AraçRengi TEXT NOT NULL,
AraçPlaka TEXT NOT NULL,
AraçKM TEXT NOT NULL,
AraçModel TEXT NOT NULL,
VitesTipi TEXT NOT NULL,
YakıtTürü TEXT NOT NULL,
ÇekişTipi TEXT NOT NULL,
AraçFiyat TEXT NOT NULL,
AraçBilgisi TEXT NOT NULL)”)
işlem.execute(sorgutable)
bağlantı.commit()
#------------ARAÇ EKLEME FONKSİYONU-----------#
def KAYDET():
ad=dosya.arac_adi.text()
renk=dosya.arac_renk.text()
plaka=dosya.arac_plaka.text()
km=dosya.arac_km.text()
model=dosya.arac_model.text()
vites=dosya.cmb_vitestipi.currentText()
yakıt=dosya.cmb_yakit.currentText()
çekiş=dosya.cmb_cekis.currentText()
fiyat=dosya.arac_fiyat.text()
bilgi=dosya.arac_bilgiler.toPlainText()
işlem.execute("INSERT INTO GALERİ(AraçAdı,AraçRengi,AraçPlaka,AraçKM,AraçModel,VitesTipi,YakıtTürü,ÇekişTipi,AraçFiyat,AraçBilgisi)VALUES(?,?,?,?,?,?,?,?,?,?)",(ad,renk,plaka,km,model,vites,yakıt,çekiş,fiyat,bilgi))
# bağlantı.commit()
LISTELE()
#-------------ARAÇBİLGİLİSTELEME------------#
def LISTELE():
dosya.arac_bilgileri.clear()
dosya.arac_bilgileri.setHorizontalHeaderLabels(("NO","ARAÇ","RENK","PLAKA","KM","MODEL","VİTES","YAKIT","ÇEKİŞ","FİYAT","DETAYI"))
dosya.arac_bilgileri.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
işlem.execute("SELECT * FROM GALERİ")
for Satırındex,Satırveri in enumerate(işlem):
for Sutunındex,Sutunveri in enumerate(Satırveri):
dosya.arac_bilgileri.setItem(Satırındex,Sutunındex,QTableWidgetItem(str(Sutunveri)))
dosya.arac_adi.clear()
dosya.arac_renk.clear()
dosya.arac_plaka.clear()
dosya.arac_km.clear()
dosya.arac_model.clear()
dosya.cmb_vitestipi.setCurrentIndex(-1)
dosya.cmb_yakit.setCurrentIndex(-1)
dosya.cmb_cekis.setCurrentIndex(-1)
dosya.arac_fiyat.clear()
dosya.arac_bilgiler.clear()
işlem.execute("SELECT COUNT (*) FROM GALERİ")
arabasayı=işlem.fetchone()
dosya.arac_sayisi.setText(str(arabasayı[0]))
LISTELE()
#-----------Araç silme işlemi---------#
def SIL():
cevap=QMessageBox.question(anapen,“SİL!”,“Seçili Araç silinecek onay veriyormusunuz?”,
QMessageBox.Yes | QMessageBox.No)
if cevap==QMessageBox.Yes:
secili=dosya.arac_bilgileri.selectedItems()
a=secili[1].text()
try:
işlem.execute(“DELETE FROM GALERİ WHERE AraçAdı=’%s’” %(a))
# bağlantı.commit()
LISTELE()
dosya.statusbar.showMessage(“KAYIT SİLME İŞLEMİ BAŞARILI”,10000)
except Exception as Hata:
dosya.statusbar.showMessage("Şöyle bir hata ile karşılaşıldı:"+str(Hata))
else:
dosya.statusbar.showMessage("KAYIT SİLME İŞLEMİ İPTAL EDİLDİ.",10000)
#---------ARAÇ ARAMA İŞLEMİ-----------#
def ARA():
arama1=dosya.arac_adi.text()
arama2=dosya.arac_plaka.text()
arama3=dosya.arac_model.text()
işlem.execute("SELECT * FROM GALERİ WHERE AraçAdı=? OR AraçPlaka=? OR AraçModel=? OR (AraçAdı=? AND AraçPlaka=?)",(arama1,arama2,arama3,arama1,arama2))
# bağlantı.commit()
dosya.arac_bilgileri.clear()
for Satırındex,Satırveri in enumerate(işlem):
for Sutunındex,Sutunveri in enumerate(Satırveri):
dosya.arac_bilgileri.setItem(Satırındex,Sutunındex,QTableWidgetItem(str(Sutunveri)))
#---------TABLE WİDGET VERİ AKTARIMI----------#
def DOLDUR():
secili=dosya.arac_bilgileri.selectedItems()
dosya.arac_adi.setText(secili[1].text())
dosya.arac_renk.setText(secili[2].text())
dosya.arac_plaka.setText(secili[3].text())
dosya.arac_km.setText(secili[4].text())
dosya.arac_model.setText(secili[5].text())
dosya.cmb_vitestipi.setCurrentText(secili[6].text())
dosya.cmb_yakit.setCurrentText(secili[7].text())
dosya.cmb_cekis.setCurrentText(secili[8].text())
dosya.arac_fiyat.setText(secili[9].text())
dosya.arac_bilgiler.setText(secili[10].text())
#-----------------ARAÇ GÜNCELLEME------------#
def GUNCELLE():
cevap=QMessageBox.question(anapen,"GÜNCELLE","Araç güncellenecek onay veriyormusunuz?", \
QMessageBox.Yes | QMessageBox.No)
if cevap==QMessageBox.Yes:
try:
secili=dosya.arac_bilgileri.selectedItems()
Id=int(secili[0].text())
ad=dosya.arac_adi.text()
renk=dosya.arac_renk.text()
plaka=dosya.arac_plaka.text()
km=dosya.arac_km.text()
model=dosya.arac_model.text()
vites=dosya.cmb_vitestipi.currentText()
yakıt=dosya.cmb_yakit.currentText()
çekiş=dosya.cmb_cekis.currentText()
fiyat=dosya.arac_fiyat.text()
bilgi=dosya.arac_bilgiler.toPlainText()
işlem.execute("UPDATE GALERİ SET AraçAdı=?,AraçRengi=?,AraçPlaka=?,AraçKM=?,AraçModel=?,VitesTipi=?,YakıtTürü=?,ÇekişTipi=?,AraçFiyat=?,AraçBilgisi=? WHERE Id=?",(ad,renk,plaka,km,model,vites,yakıt,çekiş,fiyat,bilgi,Id))
# bağlantı.commit()
LISTELE()
except Exception as Hata:
dosya.statusbar.showMessage("HATA:"+str(Hata))
else:
dosya.statusbar.showMessage("Güncelleme İptal Edildi.",1000)
def HAKKINDA():
hakkında.show()
#------Sıgnal_sloat bağlantısı-------#
dosya.btn_kaydet.clicked.connect(KAYDET)
dosya.btn_listele.clicked.connect(LISTELE)
dosya.btn_sil.clicked.connect(SIL)
dosya.btn_ara.clicked.connect(ARA)
dosya.arac_bilgileri.itemSelectionChanged.connect(DOLDUR)
dosya.btn_gncelle.clicked.connect(GUNCELLE)
dosya.hakkinda_bilgi.triggered.connect(HAKKINDA)
sys.exit(uygulama.exec_())
"
2 adet dosya daha var qt desinger ile oluşturmuş oldugum arayüz dosyam py uzantısına çevirdim ve ana dosyama import ettim