def __init__(self): """ inital the main window 1 to 49 button, 7 spinbox, calender, datafield """ QtGui.QDialog.__init__(self) self.ui = uic.loadUi(join("lotto", "gui", "lotto_dateneing.ui")) self.ui.setWindowIcon(QtGui.QIcon( join("misc", "pyLottoverwaltung.svg"))) #array of Button from 1 to 49 highest_number = 49 self.ui.Btn_Numerary_1to49 = [QtGui.QPushButton( self.ui.gridLayoutWidget) for n in xrange(highest_number)] button_number = 0 for button in self.ui.Btn_Numerary_1to49: button.setMaximumSize(QtCore.QSize(58, 58)) self.ui.gridLayout.addWidget(button, int(button_number / 7), int(button_number % 7), 1, 1) button.setAutoFillBackground(True) button_number += 1 button.setText(str(button_number)) #set 6 SpinBox and 1 self.ui.spinBox_Zahlen = [QtGui.QSpinBox( self.ui.horizontalLayoutWidget) for n in xrange(6)] self.ui.Btn_delete_Number = [QtGui.QPushButton( self.ui.horizontalLayoutWidget_2) for n in xrange(6)] for zahlen in xrange(7): if zahlen != 6: self.ui.spinBox_Zahlen[zahlen].setMinimumSize( QtCore.QSize(32, 20)) self.ui.spinBox_Zahlen[zahlen].setMaximumSize( QtCore.QSize(52, 32)) self.ui.Btn_delete_Number[zahlen].setMinimumSize( QtCore.QSize(32, 20)) self.ui.Btn_delete_Number[zahlen].setMaximumSize( QtCore.QSize(52, 20)) self.ui.horizontalLayout.addWidget( self.ui.spinBox_Zahlen[zahlen]) self.ui.horizontalLayout_2.addWidget( self.ui.Btn_delete_Number[zahlen]) else: #set extra Spinbox self.ui.spinBox_Zahlen.append(QtGui.QSpinBox( self.ui.Lottozahlen)) self.ui.spinBox_Zahlen[zahlen].setGeometry(QtCore.QRect( 130, 360, 51, 23)) self.ui.Btn_delete_Number.append(QtGui.QPushButton( self.ui.Lottozahlen)) self.ui.Btn_delete_Number[zahlen].setGeometry( QtCore.QRect(190, 360, 41, 20)) self.ui.spinBox_Zahlen[zahlen].setMaximum(49) self.ui.spinBox_Zahlen[zahlen].clear() self.ui.Btn_delete_Number[zahlen].setText("X") self.onmodus() self.geaendert() self.data_handler = Datahandler('datenbank1.sqlite') self.onBtn_gz_laden() self.onBtn_ls_laden() # slots for datanbase funktion self.ui.Btn_gz_anzeigen.clicked.connect(self.onBtn_gz_anzeigen) self.ui.Btn_ls_anzeigen.clicked.connect(self.onBtn_ls_anzeigen) self.ui.Btn_gz_loeschen.clicked.connect(self.onBtn_gz_loeschen) self.ui.Btn_gz_loeschen.setEnabled(False) self.ui.Btn_ls_loeschen.clicked.connect(self.onBtn_ls_loeschen) self.ui.Btn_ls_loeschen.setEnabled(False) self.ui.btn_ls_auswerten.clicked.connect(self.onBtn_ls_auswerten) self.ui.btn_ls_auswerten.setEnabled(False) self.ui.CBox_gz_kompl_ausgeben.clicked.connect( self.onCBox_gz_kompl_ausgeben) self.ui.btn_set_calender_today.clicked.connect( self.onbtn_set_calender_today) self.ui.btn_kalender.clicked.connect(self.onbtn_kalender) # fields fill with random numbers and give them to database self.ui.btn_zufall.clicked.connect(self.onbtn_zufall) self.ui.btn_hinzu.clicked.connect(self.onbtn_hinzu) # fields of draw numbers for number in xrange(7): self.spinBox_clear = functools.partial( self.spinBox_1to7_clear, number) self.ui.Btn_delete_Number[number].clicked.connect( self.spinBox_clear) self.focusSpinBox = functools.partial( self.focusSpinBox_1to7, number) self.ui.spinBox_Zahlen[number].valueChanged.connect( self.focusSpinBox) self.ui.com_modus.currentIndexChanged.connect(self.onmodus) # fields of 1 to 49 numbers for button in xrange(49): self.onEingabefeld = functools.partial( self.onEingabefeld_1to49, button + 1) self.ui.Btn_Numerary_1to49[button].clicked.connect( self.onEingabefeld) self.statusBar().showMessage('Bereit') self.ui.actionBeenden.triggered.connect(self.onClose) self.ui.actionInfo.triggered.connect(self.onInfo) self.ui.actionGo_to_the_website.triggered.connect(self.onwebsite) self.ui.actionDaten_von_lotto_de.triggered.connect(self.onData_lottode) self.onData_lottozahlenonlinede_2000 = functools.partial( self.onData_lottozahlenonlinede, 2000, 2004) self.ui.actionDaten_von_lottozahlenonline_de_2000_2004.triggered. \ connect(self.onData_lottozahlenonlinede_2000) self.onData_lottozahlenonlinede_2005 = functools.partial( self.onData_lottozahlenonlinede, 2005, 2009) self.ui.actionDaten_von_lottozahlenonline_de_2005_2009.triggered. \ connect(self.onData_lottozahlenonlinede_2005) self.onData_lottozahlenonlinede_2010 = functools.partial( self.onData_lottozahlenonlinede, 2010, 2013) self.ui.actionDaten_von_lottozahlenonline_de_2010_2013.triggered. \ connect(self.onData_lottozahlenonlinede_2010) self.ui.edi_daten_gewinnz.cursorPositionChanged.connect( self.ondaten_gewinnz) self.ui.edi_daten_lottoschein.cursorPositionChanged.connect( self.ondaten_lottoschein) self.onbtn_set_calender_today() self.ui.menuInternet.deleteLater() self.ui.show()
import os import matplotlib.pyplot as plt import pygal from flask import Flask, Markup, render_template, redirect, request, jsonify, send_file, abort from flask_googlemaps import GoogleMaps from pygal.style import DarkSolarizedStyle from datahandler import Datahandler from login import Login app = Flask(__name__) GoogleMaps(app) login_state = Login() screennum = 0 data_handler = Datahandler() # Update the version here: version = "1.60606a" selected_sensor = 0 @app.route('/') def index(): title = "Smarcity Login" logtitle = "Login - Dashboard" return render_template('index.html', title=title, logtitle=logtitle) @app.route('/login', methods=['POST']) def login(): user = request.form['user']
class MeinDialog(QtGui.QMainWindow): def __init__(self): """ inital the main window 1 to 49 button, 7 spinbox, calender, datafield """ QtGui.QDialog.__init__(self) self.ui = uic.loadUi(join("lotto", "gui", "lotto_dateneing.ui")) self.ui.setWindowIcon(QtGui.QIcon( join("misc", "pyLottoverwaltung.svg"))) #array of Button from 1 to 49 highest_number = 49 self.ui.Btn_Numerary_1to49 = [QtGui.QPushButton( self.ui.gridLayoutWidget) for n in xrange(highest_number)] button_number = 0 for button in self.ui.Btn_Numerary_1to49: button.setMaximumSize(QtCore.QSize(58, 58)) self.ui.gridLayout.addWidget(button, int(button_number / 7), int(button_number % 7), 1, 1) button.setAutoFillBackground(True) button_number += 1 button.setText(str(button_number)) #set 6 SpinBox and 1 self.ui.spinBox_Zahlen = [QtGui.QSpinBox( self.ui.horizontalLayoutWidget) for n in xrange(6)] self.ui.Btn_delete_Number = [QtGui.QPushButton( self.ui.horizontalLayoutWidget_2) for n in xrange(6)] for zahlen in xrange(7): if zahlen != 6: self.ui.spinBox_Zahlen[zahlen].setMinimumSize( QtCore.QSize(32, 20)) self.ui.spinBox_Zahlen[zahlen].setMaximumSize( QtCore.QSize(52, 32)) self.ui.Btn_delete_Number[zahlen].setMinimumSize( QtCore.QSize(32, 20)) self.ui.Btn_delete_Number[zahlen].setMaximumSize( QtCore.QSize(52, 20)) self.ui.horizontalLayout.addWidget( self.ui.spinBox_Zahlen[zahlen]) self.ui.horizontalLayout_2.addWidget( self.ui.Btn_delete_Number[zahlen]) else: #set extra Spinbox self.ui.spinBox_Zahlen.append(QtGui.QSpinBox( self.ui.Lottozahlen)) self.ui.spinBox_Zahlen[zahlen].setGeometry(QtCore.QRect( 130, 360, 51, 23)) self.ui.Btn_delete_Number.append(QtGui.QPushButton( self.ui.Lottozahlen)) self.ui.Btn_delete_Number[zahlen].setGeometry( QtCore.QRect(190, 360, 41, 20)) self.ui.spinBox_Zahlen[zahlen].setMaximum(49) self.ui.spinBox_Zahlen[zahlen].clear() self.ui.Btn_delete_Number[zahlen].setText("X") self.onmodus() self.geaendert() self.data_handler = Datahandler('datenbank1.sqlite') self.onBtn_gz_laden() self.onBtn_ls_laden() # slots for datanbase funktion self.ui.Btn_gz_anzeigen.clicked.connect(self.onBtn_gz_anzeigen) self.ui.Btn_ls_anzeigen.clicked.connect(self.onBtn_ls_anzeigen) self.ui.Btn_gz_loeschen.clicked.connect(self.onBtn_gz_loeschen) self.ui.Btn_gz_loeschen.setEnabled(False) self.ui.Btn_ls_loeschen.clicked.connect(self.onBtn_ls_loeschen) self.ui.Btn_ls_loeschen.setEnabled(False) self.ui.btn_ls_auswerten.clicked.connect(self.onBtn_ls_auswerten) self.ui.btn_ls_auswerten.setEnabled(False) self.ui.CBox_gz_kompl_ausgeben.clicked.connect( self.onCBox_gz_kompl_ausgeben) self.ui.btn_set_calender_today.clicked.connect( self.onbtn_set_calender_today) self.ui.btn_kalender.clicked.connect(self.onbtn_kalender) # fields fill with random numbers and give them to database self.ui.btn_zufall.clicked.connect(self.onbtn_zufall) self.ui.btn_hinzu.clicked.connect(self.onbtn_hinzu) # fields of draw numbers for number in xrange(7): self.spinBox_clear = functools.partial( self.spinBox_1to7_clear, number) self.ui.Btn_delete_Number[number].clicked.connect( self.spinBox_clear) self.focusSpinBox = functools.partial( self.focusSpinBox_1to7, number) self.ui.spinBox_Zahlen[number].valueChanged.connect( self.focusSpinBox) self.ui.com_modus.currentIndexChanged.connect(self.onmodus) # fields of 1 to 49 numbers for button in xrange(49): self.onEingabefeld = functools.partial( self.onEingabefeld_1to49, button + 1) self.ui.Btn_Numerary_1to49[button].clicked.connect( self.onEingabefeld) self.statusBar().showMessage('Bereit') self.ui.actionBeenden.triggered.connect(self.onClose) self.ui.actionInfo.triggered.connect(self.onInfo) self.ui.actionGo_to_the_website.triggered.connect(self.onwebsite) self.ui.actionDaten_von_lotto_de.triggered.connect(self.onData_lottode) self.onData_lottozahlenonlinede_2000 = functools.partial( self.onData_lottozahlenonlinede, 2000, 2004) self.ui.actionDaten_von_lottozahlenonline_de_2000_2004.triggered. \ connect(self.onData_lottozahlenonlinede_2000) self.onData_lottozahlenonlinede_2005 = functools.partial( self.onData_lottozahlenonlinede, 2005, 2009) self.ui.actionDaten_von_lottozahlenonline_de_2005_2009.triggered. \ connect(self.onData_lottozahlenonlinede_2005) self.onData_lottozahlenonlinede_2010 = functools.partial( self.onData_lottozahlenonlinede, 2010, 2013) self.ui.actionDaten_von_lottozahlenonline_de_2010_2013.triggered. \ connect(self.onData_lottozahlenonlinede_2010) self.ui.edi_daten_gewinnz.cursorPositionChanged.connect( self.ondaten_gewinnz) self.ui.edi_daten_lottoschein.cursorPositionChanged.connect( self.ondaten_lottoschein) self.onbtn_set_calender_today() self.ui.menuInternet.deleteLater() self.ui.show() def init(self): """inital variable""" self.zahl = 0 def onbtn_kalender(self): """open calender dialog""" dlg = kalender_datum.ui_kalender( self.ui.spinBox_jahr.value(), self.ui.spinBox_monat.value(), self.ui.spinbox_tag.value()) if dlg.exec_() == 1: self.ui.spinbox_tag.setValue(dlg.kalender().day()) self.ui.spinBox_monat.setValue(dlg.kalender().month()) self.ui.spinBox_jahr.setValue(dlg.kalender().year()) def ondaten_gewinnz(self): """ Anzeigen der Gewinnzahlen an den Auswahlfeld Auslesen der Zeilennumer Den Text der Zeile in der Beschriftung ausgeben """ block = self.ui.edi_daten_gewinnz.textCursor().blockNumber() text = self.ui.edi_daten_gewinnz.document(). \ findBlockByNumber(block).text() self.ui.lab_daten_gewinnz.setText(text) self.ui.Btn_gz_loeschen.setEnabled(True) def ondaten_lottoschein(self): """ Anzeigen der Daten des Lottoscheins an den Auswahlfeld Auslesen der Zeilennumer Den Text der Zeile in der Beschriftung ausgeben """ block = self.ui.edi_daten_lottoschein.textCursor().blockNumber() text = self.ui.edi_daten_lottoschein.document(). \ findBlockByNumber(block).text() self.ui.lab_daten_lottoschein.setText(text) self.ui.Btn_ls_loeschen.setEnabled(True) self.ui.btn_ls_auswerten.setEnabled(True) def onInfo(self): """ Programm Info """ text = self.tr('Eingabe der Gewinnzahlen von einer Ziehung' 'oder des Lottoscheins\n Lizenz: GNU GPLv3\n' 'http://www.gnu.org/licenses/') a = QtGui.QMessageBox() a.setWindowTitle(self.tr('Info')) a.setText(text) a.setInformativeText(self.tr('Von Markus Hackspacher')) a.exec_() def closeEvent(self, event): """ the program exit """ return def onData_lottode(self): """Load the actual draw from lotto.de""" try: datum, value = webzugriff.data_from_webpage() except: a = QtGui.QMessageBox() a.setWindowTitle(self.tr('Info')) a.setText(self.tr('Daten konnten nicht geladen werden')) a.exec_() return self.ui.spinbox_tag.setValue(int(datum[:2])) self.ui.spinBox_monat.setValue(int(datum[3:5])) self.ui.spinBox_jahr.setValue(int(datum[6:])) self.ui.spinBox_Zahlen[0].setValue(value[0]) self.ui.spinBox_Zahlen[1].setValue(value[1]) self.ui.spinBox_Zahlen[2].setValue(value[2]) self.ui.spinBox_Zahlen[3].setValue(value[3]) self.ui.spinBox_Zahlen[4].setValue(value[4]) self.ui.spinBox_Zahlen[5].setValue(value[5]) #self.spinBox_Zahlen[6].setValue(value[6]) #04.05.2013 rules change, no Zusatzzahl self.ui.spinBox_superz.setValue(value[6]) self.ui.spinBox_spiel77.setValue(value[7]) self.ui.spinBox_super6.setValue(value[8]) self.ui.com_modus.setCurrentIndex(0) self.geaendert() def onData_lottozahlenonlinede(self, first_year, last_year): """Load the draw from lottozahlenonline.de""" a = QtGui.QProgressDialog("Daten Einlesen", "Abbruch", first_year, last_year, self, QtCore.Qt.Dialog | QtCore.Qt.WindowTitleHint) a.setWindowModality(QtCore.Qt.WindowModal) a.setValue(first_year) for z in range(first_year, last_year + 1): print z url = ("http://www.lottozahlenonline.de/statistik/beide-spieltage" "/lottozahlen-archiv.php?j={0}".format(z)) webzugriff.data_from_achiv(self.data_handler, url) a.setValue(z) a.close() self.onBtn_gz_laden() def spinBox_1to7_clear(self, number=None, numbers=None): """Die SpinBoxen 1 bis 6 und Zusatzzahl löschen""" if number is not None: self.ui.spinBox_Zahlen[number].setValue(0) self.ui.spinBox_Zahlen[number].clear() elif numbers is not None: for spinBox_number in self.ui.spinBox_Zahlen: if spinBox_number.value() == numbers: spinBox_number.setValue(0) spinBox_number.clear() def onEingabefeld_1to49(self, zahl): """Ein Zahlenfelder 1 bis 49 wurde angeklickt""" self.zahl = zahl self.geaendert_btn() def focusSpinBox_1to7(self, number): """Ein Auswahlfelder der 7 Gewinnzahlen oder Lottoscheins hat sich geaendert""" """ for spinBox_Zahlen in self.ui.spinBox_Zahlen: if (self.ui.spinBox_Zahlen[number].value() == spinBox_Zahlen.value() and not self.ui.spinBox_Zahlen[number] == spinBox_Zahlen and not self.ui.spinBox_Zahlen[number].value() == 0): self.ui.spinBox_Zahlen[number].setValue( spinBox_Zahlen.value() + 1) """ self.geaendert() def onbtn_hinzu(self): """drawing numbers move in database """ day = '{0:4}-{1:02}-{2:02}'.format(self.ui.spinBox_jahr.value(), self.ui.spinBox_monat.value(), self.ui.spinbox_tag.value()) if self.ui.com_modus.currentIndex() == 0: self.data_handler.insert_ziehung(day, self.draw_numbers(), self.ui.spinBox_superz.value(), self.ui.spinBox_spiel77.value(), self.ui.spinBox_super6.value()) self.ui.Btn_gz_loeschen.setEnabled(False) self.onBtn_gz_laden() else: self.data_handler.insert_schein(day, self.draw_numbers()[:-1], self.ui.com_laufzeit.currentIndex(), self.ui.com_laufzeit_tag.currentIndex(), self.ui.spinBox_spiel77.value()) self.ui.Btn_ls_loeschen.setEnabled(False) self.onBtn_ls_laden() def onBtn_ls_auswerten(self): """den Lottoschein auswerten""" dlg = auswertung.ui_lotto_auswertung(self.data_handler.get_schein()[ self.ui.edi_daten_lottoschein.textCursor().blockNumber()][0], self.data_handler) dlg.exec_() def onBtn_gz_anzeigen(self): """ show drawing numbers Gewinnzahlen im großen Feld anzeigen """ block = self.ui.edi_daten_gewinnz.textCursor().blockNumber() lottodaten = self.data_handler.get_ziehung() if lottodaten == []: return if not self.ui.CBox_gz_kompl_ausgeben.isChecked(): lottodaten = lottodaten[-10:] self.ui.spinbox_tag.setValue(int(lottodaten[block][1][8:])) self.ui.spinBox_monat.setValue(int(lottodaten[block][1][5:7])) self.ui.spinBox_jahr.setValue(int(lottodaten[block][1][:4])) i = 0 for num in lottodaten[block][5].split(','): self.ui.spinBox_Zahlen[i].setValue(int(num)) i += 1 self.ui.spinBox_superz.setValue(lottodaten[block][2]) self.ui.spinBox_spiel77.setValue(lottodaten[block][3]) self.ui.spinBox_super6.setValue(lottodaten[block][4]) self.ui.com_modus.setCurrentIndex(0) self.geaendert() def onBtn_ls_anzeigen(self): """ show tip numbers Lottoschein im großen Feld anzeigen, """ block = self.ui.edi_daten_lottoschein.textCursor().blockNumber() lottodaten = self.data_handler.get_schein() if lottodaten == []: return self.ui.spinbox_tag.setValue(int(lottodaten[block][1][8:])) self.ui.spinBox_monat.setValue(int(lottodaten[block][1][5:7])) self.ui.spinBox_jahr.setValue(int(lottodaten[block][1][:4])) i = 0 for num in lottodaten[block][5].split(','): self.ui.spinBox_Zahlen[i].setValue(int(num)) i += 1 self.ui.com_laufzeit.setCurrentIndex(lottodaten[block][2]) self.ui.com_laufzeit_tag.setCurrentIndex(lottodaten[block][3]) self.ui.spinBox_spiel77.setValue(lottodaten[block][4]) self.ui.com_modus.setCurrentIndex(1) self.geaendert() def onBtn_gz_loeschen(self): """ delete drawing numbers from the database Gewinnzahlen einer Ziehung aus der Datenbank loeschen """ lottodaten = self.data_handler.get_ziehung() if lottodaten == []: return anzahl_datensaetze = len(lottodaten) if not self.ui.CBox_gz_kompl_ausgeben.isChecked() \ and anzahl_datensaetze > 10: anzahl_datensaetze -= 10 else: anzahl_datensaetze = 0 self.data_handler.delete_ziehung(lottodaten [self.ui.edi_daten_gewinnz.textCursor().blockNumber() + anzahl_datensaetze][0]) self.onBtn_gz_laden() def onBtn_ls_loeschen(self): """ delete tip numbers from the database Lottoschein aus der Datenbank loeschen """ lottodaten = self.data_handler.get_schein() if lottodaten == []: return self.data_handler.delete_schein(lottodaten [self.ui.edi_daten_lottoschein.textCursor().blockNumber()][0]) self.onBtn_ls_laden() def onBtn_ls_laden(self): """Read the Lottoschein from the Database loading into the QPlainTextEdit """ PlainText = QtGui.QPlainTextEdit() lottodaten = self.data_handler.get_schein() for schein in lottodaten: PlainText.appendPlainText('Datum: {0} Zahlen: {1}' .format(schein[1], schein[5])) self.ui.edi_daten_lottoschein.setPlainText( PlainText.document().toPlainText()) self.ui.edi_daten_lottoschein.moveCursor( self.ui.edi_daten_lottoschein.textCursor().End) def onBtn_gz_laden(self): """Read the Gewinnzahlen from the Database loading into the QPlainTextEdit """ PlainText = QtGui.QPlainTextEdit() lottodaten = self.data_handler.get_ziehung() if not self.ui.CBox_gz_kompl_ausgeben.isChecked(): lottodaten = lottodaten[-10:] for i in lottodaten: PlainText.appendPlainText('Datum: {0} Zahlen: {1}' .format(i[1], i[5])) self.ui.edi_daten_gewinnz.setPlainText( PlainText.document().toPlainText()) self.ui.edi_daten_gewinnz.moveCursor( self.ui.edi_daten_gewinnz.textCursor().End) def onCBox_gz_kompl_ausgeben(self): """ CheckBox: Show the complete database in TextEdit """ self.onBtn_gz_laden() def onbtn_zufall(self): """ Die Zufallszahen generieren """ from zufallszahl import zufallszahlen i_anzahl = 6 i_hochste = 49 zufallszahl = zufallszahlen(i_anzahl, i_hochste) for zahlen in xrange(6): self.ui.spinBox_Zahlen[zahlen].setValue(zufallszahl[zahlen]) self.zahl = 0 self.geaendert_btn() def onbtn_set_calender_today(self): """set calender today""" self.ui.spinbox_tag.setValue(QtCore.QDate.currentDate().day()) self.ui.spinBox_monat.setValue(QtCore.QDate.currentDate().month()) self.ui.spinBox_jahr.setValue(QtCore.QDate.currentDate().year()) def onmodus(self): """ Wenn der Eingabe-Modus wechselt werden Schaltflächen an oder ab geschaltet """ if self.ui.com_modus.currentIndex() == 1: self.ui.btn_zufall.setVisible(True) self.ui.com_laufzeit.setVisible(True) self.ui.com_laufzeit_tag.setVisible(True) self.ui.lab_laufzeit.setVisible(True) self.ui.spinBox_superz.setVisible(False) self.ui.lab_superz.setVisible(False) self.ui.spinBox_spiel77.setVisible(True) self.ui.lab_spiel77.setVisible(False) self.ui.lab_scheinnr.setVisible(True) self.ui.spinBox_super6.setVisible(False) self.ui.lab_super6.setVisible(False) self.ui.lab_zusatz.setVisible(False) self.ui.spinBox_Zahlen[6].setVisible(False) self.ui.Btn_delete_Number[6].setVisible(False) self.spinBox_1to7_clear(6) self.geaendert() else: self.ui.btn_zufall.setVisible(False) self.ui.com_laufzeit.setVisible(False) self.ui.com_laufzeit_tag.setVisible(False) self.ui.lab_laufzeit.setVisible(False) self.ui.spinBox_superz.setVisible(True) self.ui.lab_superz.setVisible(True) self.ui.spinBox_spiel77.setVisible(True) self.ui.lab_spiel77.setVisible(True) self.ui.lab_scheinnr.setVisible(False) self.ui.spinBox_super6.setVisible(True) self.ui.lab_super6.setVisible(True) self.ui.lab_zusatz.setVisible(True) self.ui.spinBox_Zahlen[6].setVisible(True) self.ui.Btn_delete_Number[6].setVisible(True) self.geaendert() def geaendert(self): """Botton colour in dependence of the valve of the Spinbox """ a = self.draw_numbers() for button in self.ui.Btn_Numerary_1to49: if int(button.text()) in a: button.setFlat(False) button.setStyleSheet("color: red;") if int(button.text()) == self.ui.spinBox_Zahlen[6].value(): button.setStyleSheet("color: blue;") else: button.setFlat(True) button.setStyleSheet("color: black;") def geaendert_btn(self): """in den SpinBoxen die Nummern der Zahlen 1 bis 49 anzeigen wenn die Zahl abgewaehlt wird, wird auch der Wert der entsprechende Spinbox geloescht """ a = self.draw_numbers() for number in self.ui.spinBox_Zahlen: if number.value() == 0 and not (self.zahl in a): number.setValue(self.zahl) break elif self.zahl == number.value(): self.spinBox_1to7_clear(numbers=number.value()) self.zahl = 0 a = self.draw_numbers() if self.ui.spinBox_Zahlen[6].value() == 0 \ and self.ui.com_modus.currentIndex() == 0 \ and not (self.zahl in a): self.ui.spinBox_Zahlen[6].setValue(self.zahl) elif self.zahl == self.ui.spinBox_Zahlen[6].value() \ or self.ui.com_modus.currentIndex() == 1: self.spinBox_1to7_clear(6) self.geaendert() def draw_numbers(self): """ numbers are in the draw """ return [num_draw.value() for num_draw in self.ui.spinBox_Zahlen] def onwebsite(self): """ open website """ webbrowser.open_new_tab("http://markush.cwsurf.de/" "joomla_17/index.php/python/pylottoverwaltung/") def onClose(self): self.ui.close()