Code: Alles auswählen
__author__ = 'Kalli87'
from gi.repository import Gtk
from gi.repository import Pango
import tkinter
import tkinter.ttk
import tkinter.messagebox
import psycopg2
from tkinter import *
from tkinter.ttk import *
import os
class Application(Frame):
def __init__(self, master):
Frame.__init__(self, master)
self.grid()
self.datenbank()
self.layout_login()
def datenbank(self):
connection = psycopg2.connect("dbname=sqltest")
self.cursor = connection.cursor()
def layout_login(self):
Button(text = "Login", command = self.login).grid(row=5, column=0, sticky=NSEW, pady=4)
Button(text='Schließen', command = self.master.quit).grid(row=5, column=1, sticky=NSEW, pady=4)
Label(text="Username", font="Helvetica 13 bold").grid(row=4, column=0, pady=5, padx=5)
Label(text="Passwort", font="Helvetica 13 bold").grid(row=4, column=1, pady=5, padx=5)
self.benutzername = Entry(font=10)
self.benutzername.grid(row=3, column=0, padx=5, pady=5)
self.passwort = Entry(font=10, show="******")
self.passwort.grid(row=3, column=1, padx=5, pady=5)
def login(self):
root.protocol("WM_DELETE_WINDOW", self.master.quit)
self.cursor.execute("SELECT * FROM mitarbeiter WHERE loginname = %s AND passwort = %s ", (self.benutzername.get(), self.passwort.get()))
row = self.cursor.fetchone()
self.benutzername.delete(0, END)
self.passwort.delete(0, END)
if row is not None:
print("Login erfolgreich!")
def kunde_neu():
nb = Notebook(self.master, name='nb', width=800, height=400) # create Notebook in "master"
nb.grid(row=6, column=2) # fill "master" but pad sides
tab_kunde_neu = Frame(nb, name='tab-kunde-neu')
nb.add(tab_kunde_neu, text="Kunde (neu)")
Label(tab_kunde_neu, text="Titel", font="Helvetica 13 bold").grid(row=1, column=0)
Label(tab_kunde_neu, text="Name", font="Helvetica 13 bold").grid(row=1, column=2)
Label(tab_kunde_neu, text="Vorname", font="Helvetica 13 bold").grid(row=1, column=4)
Label(tab_kunde_neu, text="Anrede", font="Helvetica 13 bold").grid(row=3, column=0)
Label(tab_kunde_neu, text="Geburtstag", font="Helvetica 13 bold").grid(row=3, column=2)
Label(tab_kunde_neu, text="Staatsangehörigkeit", font="Helvetica 13 bold").grid(row=3, column=4)
Label(tab_kunde_neu, text="Steueridentifikationsnummer", font="Helvetica 13 bold").grid(row=5, column=0)
Label(tab_kunde_neu, text="Finanzamt", font="Helvetica 13 bold").grid(row=5, column=2)
Label(tab_kunde_neu, text="Strasse", font="Helvetica 13 bold").grid(row=7, column=0)
Label(tab_kunde_neu, text="Hausnummer", font="Helvetica 13 bold").grid(row=7, column=2)
Label(tab_kunde_neu, text="Postleitzahl", font="Helvetica 13 bold").grid(row=9, column=0)
Label(tab_kunde_neu, text="Ort", font="Helvetica 13 bold").grid(row=9, column=2)
Label(tab_kunde_neu, text="Telefon", font="Helvetica 13 bold").grid(row=11, column=0)
Label(tab_kunde_neu, text="Telefax", font="Helvetica 13 bold").grid(row=11, column=2)
titel = Entry(tab_kunde_neu, font=10)
titel.grid(row=0, column=0)
name = Entry(tab_kunde_neu, font=10)
name.grid(row=0, column=2)
vorname = Entry(tab_kunde_neu, font=10)
vorname.grid(row=0, column=4)
anrede = Entry(tab_kunde_neu, font=10)
anrede.grid(row=2, column=0)
geburtstag = Entry(tab_kunde_neu, font=10)
geburtstag.grid(row=2, column=2)
sql=("SELECT * FROM staatsangehoerigkeit")
self.cursor.execute(sql)
staat = StringVar(tab_kunde_neu)
staat.set("Staatsangehörigkeit")
laender=[]
for dsatz in (self.cursor):
staatsangehoerigkeit = dsatz[0]
laender.append(staatsangehoerigkeit)
dropdown = OptionMenu(tab_kunde_neu, staat, staat.get(), *laender )
dropdown.grid(row=2, column=4, sticky=NSEW)
steuer = Entry(tab_kunde_neu, font=10)
steuer.grid(row=4, column=0)
finanzamt = Entry(tab_kunde_neu, font=10)
finanzamt.grid(row=4, column=2)
strasse = Entry(tab_kunde_neu, font=10)
strasse.grid(row=6, column=0)
hausnr = Entry(tab_kunde_neu, font=10)
hausnr.grid(row=6, column=2)
plz = Entry(tab_kunde_neu, font=10)
plz.grid(row=8, column=0)
ort = Entry(tab_kunde_neu, font=10)
ort.grid(row=8, column=2)
telefon = Entry(tab_kunde_neu, font=10)
telefon.grid(row=10, column=0)
telefax = Entry(tab_kunde_neu, font=10)
telefax.grid(row=10, column=2)
Button(tab_kunde_neu, text='Schließen', command=self.master.quit).grid(row=5, column=5, sticky=NSEW, pady=4)
Button(tab_kunde_neu, text='Speichern', ).grid(row=6, column=5, sticky=NSEW, pady=4)
Button(tab_kunde_neu, text='Abbruch', ).grid(row=7, column=5, sticky=NSEW, pady=4)
return kunde_neu()
else:
print("Fehler!")
tkinter.messagebox.showwarning('Warnung', 'Passwort oder Username war falsch')
root = Tk()
root.title('WBS')
app = Application(root)
root.mainloop()