import sys
from PyQt5.QtWidgets import
QApplication, QWidget, QLabel, QVBoxLayout, QLineEdit, QHBoxLayout, QPushButton, QListWidget
import sqlite3
conn = sqlite3.connect("telef.db")
t = conn.cursor()
t.execute('''CREATE TABLE IF NOT EXISTS telef
(name TEXT, la_name TEXT, mi_name TEXT, mail TEXT, number TEXT)''')
conn.commit()
class telefon(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("Телефонная книжка")
self.layout = QVBoxLayout()
self.name_label = QLabel("Имя")
self.name_input = QLineEdit()
self.la_name_label = QLabel("Фамилия")
self.la_name_input = QLineEdit()
self.mi_name_label = QLabel("Отчество")
self.mi_name_input = QLineEdit()
self.mail_label = QLabel("Почта")
self.mail_input = QLineEdit()
self.number_label = QLabel("Телефон")
self.number_input = QLineEdit()
self.add = QPushButton("Добавить")
self.add.clicked.connect(self.add_t)
self.dell = QPushButton("Удалить")
self.dell.clicked.connect(self.dell_t)
self.list = QListWidget()
self.layout.addWidget(self.name_label)
self.layout.addWidget(self.name_input)
self.layout.addWidget(self.la_name_label)
self.layout.addWidget(self.la_name_input)
self.layout.addWidget(self.mi_name_label)
self.layout.addWidget(self.mi_name_input)
self.layout.addWidget(self.mail_label)
self.layout.addWidget(self.mail_input)
self.layout.addWidget(self.number_label)
self.layout.addWidget(self.number_input)
self.layout.addWidget(self.add)
self.layout.addWidget(self.dell)
self.layout.addWidget(self.list)
self.setLayout(self.layout)
self.load_tasks()
def add_t(self):
name = self.name_input.text()
laname = self.la_name_input.text()
miname = self.mi_name_input.text()
mail = self.mail_input.text()
number = self.number_input.text()
if name and laname and miname and mail and number:
t.execute("INSERT INTO telef (name, la_name, mi_name, mail, number) VALUES (?, ?, ?, ?, ?)", (name, laname, miname, mail, number))
conn.commit()
self.name_input.clear()
self.la_name_input.clear()
self.mi_name_input.clear()
self.mail_input.clear()
self.number_input.clear()
self.load_tasks()
def dell_t(self):
sel = self.list.selectedItems()
if sel:
for item in sel:
item_text = item.text()
name = item_text.split(",")[1].strip()
t.execute("DELETE FROM telef WHERE name=?", (name,))
conn.commit()
self.load_tasks()
def load_tasks(self):
self.list.clear()
t.execute("SELECT * FROM telef")
contacts = t.fetchall()
for task in contacts:
lamale = task[0]
name = task[1]
miname = task[2]
mail = task[3]
number = task[4]
item_text = f"{name}, {lamale}, {miname}, {mail}, {number}"
self.list.addItem(item_text)
if __name__ == '__main__':
app = QApplication(sys.argv)
planner = telefon()
planner.show()
sys.exit(app.exec_())