Программа то работает, то нет
Не могу понять почему при запуске watches.py программа то работает, то нет.
watches.py
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtCore import QTime, QTimer
from PyQt5 import QtCore, uic
import sys
from ui_watches import Ui_Form, Error, Ui_DialogForm, l
class Watches(QWidget, Ui_Form):
def __init__(self):
global dialog, error, labels
super().__init__()
self.setupUi(self)
self.pushButton_pF.clicked.connect(self.showDialog)
def showTime(self):
time = QTime.currentTime()
text = time.toString('hh:mm')
if (time.second() % 2) == 0:
text = text[:2] + ' ' + text[3:]
self.labelF.setText(str(l[0]))
self.label_2F.setText(str(l[1]))
self.label_3F.setText(str(l[2]))
self.label_4F.setText(str(l[3]))
self.label_5F.setText(str(l[4]))
self.label_6F.setText(str(l[5]))
self.label_7F.setText(str(l[6]))
self.label_8F.setText(str(l[7]))
self.label_9F.setText(str(l[8]))
self.label_10F.setText(str(l[9]))
if l[0]:
self.labelF.setVisible(True)
self.checkBoxF.setVisible(True)
self.pushButtonF.setVisible(True)
if l[1]:
self.label_2F.setVisible(True)
self.checkBox_2F.setVisible(True)
self.pushButton_2F.setVisible(True)
if l[2]:
self.label_3F.setVisible(True)
self.checkBox_3F.setVisible(True)
self.pushButton_3F.setVisible(True)
if l[3]:
self.label_4F.setVisible(True)
self.checkBox_4F.setVisible(True)
self.pushButton_4F.setVisible(True)
if l[4]:
self.label_5F.setVisible(True)
self.checkBox_5F.setVisible(True)
self.pushButton_5F.setVisible(True)
if l[5]:
self.label_6F.setVisible(True)
self.checkBox_6F.setVisible(True)
self.pushButton_6F.setVisible(True)
if l[6]:
self.label_7F.setVisible(True)
self.checkBox_7F.setVisible(True)
self.pushButton_7F.setVisible(True)
if l[7]:
self.label_8F.setVisible(True)
self.checkBox_8F.setVisible(True)
self.pushButton_8F.setVisible(True)
if l[8]:
self.label_9F.setVisible(True)
self.checkBox_9F.setVisible(True)
self.pushButton_9F.setVisible(True)
if l[9]:
self.label_10F.setVisible(True)
self.checkBox_10F.setVisible(True)
self.pushButton_10F.setVisible(True)
self.lcdNumberF.display(text)
def showDialog(self):
global l, dialog, error
if l.count(False) == 0:
error = Error()
error.show()
else:
dialog = Ui_DialogForm()
dialog.show()
def exept_hook(cls, exception, traceback):
sys.__excepthook__(cls, exception, traceback)
if __name__ == '__main__':
sys.exepthook = exept_hook
app = QApplication(sys.argv)
wtch = Watches()
wtch.show()
sys.exit(app.exec_())
ui_watches.py
# -*- coding: utf-8 -*-
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QWidget
from PyQt5.QtCore import QTime, QTimer
import sys
l = [False] * 10
class Ui_Form(object):
def __init__(self):
super(Ui_Form, self).__init__()
self.setWindowTitle('Alarm')
def setupUi(self, FormF):
FormF.setObjectName("FormF")
FormF.resize(264, 402)
self.gridLayoutF = QtWidgets.QGridLayout(FormF)
self.gridLayoutF.setObjectName("gridLayoutF")
self.lcdNumberF = QtWidgets.QLCDNumber(FormF)
self.lcdNumberF.setObjectName("lcdNumberF")
self.gridLayoutF.addWidget(self.lcdNumberF, 0, 1, 1, 2)
self.timer = QTimer(self)
self.timer.timeout.connect(self.showTime)
self.timer.start(1000)
self.showTime()
self.pushButton_pF = QtWidgets.QPushButton(FormF)
self.pushButton_pF.setObjectName("pushButton_pF")
self.gridLayoutF.addWidget(self.pushButton_pF, 7, 1, 1, 2)
self.lineF = QtWidgets.QFrame(FormF)
self.lineF.setFrameShape(QtWidgets.QFrame.HLine)
self.lineF.setFrameShadow(QtWidgets.QFrame.Sunken)
self.lineF.setObjectName("lineF")
self.gridLayoutF.addWidget(self.lineF, 1, 1, 1, 1)
self.scrollAreaF = QtWidgets.QScrollArea(FormF)
self.scrollAreaF.setWidgetResizable(True)
self.scrollAreaF.setObjectName("scrollAreaF")
self.scrollAreaWidgetContentsF = QtWidgets.QWidget()
self.scrollAreaWidgetContentsF.setGeometry(QtCore.QRect(0, 0, 221, 492))
self.scrollAreaWidgetContentsF.setObjectName("scrollAreaWidgetContentsF")
self.formLayoutF = QtWidgets.QFormLayout(self.scrollAreaWidgetContentsF)
self.formLayoutF.setObjectName("formLayoutF")
self.checkBoxF = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBoxF.setText("")
self.checkBoxF.setObjectName("checkBoxF")
self.formLayoutF.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.checkBoxF)
self.labelF = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.labelF.setObjectName("labelF")
self.formLayoutF.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.labelF)
self.pushButtonF = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButtonF.setObjectName("pushButtonF")
self.formLayoutF.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.pushButtonF)
self.labelF.setVisible(False)
self.checkBoxF.setVisible(False)
self.pushButtonF.setVisible(False)
self.checkBox_2F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_2F.setText("")
self.checkBox_2F.setObjectName("checkBox_2F")
self.formLayoutF.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.checkBox_2F)
self.label_2F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_2F.setObjectName("label_2F")
self.formLayoutF.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.label_2F)
self.pushButton_2F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_2F.setObjectName("pushButton_2F")
self.formLayoutF.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.pushButton_2F)
self.label_2F.setVisible(False)
self.checkBox_2F.setVisible(False)
self.pushButton_2F.setVisible(False)
self.checkBox_3F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_3F.setText("")
self.checkBox_3F.setObjectName("checkBox_2F")
self.formLayoutF.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.checkBox_3F)
self.label_3F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_3F.setObjectName("label_3F")
self.formLayoutF.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.label_3F)
self.pushButton_3F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_3F.setObjectName("pushButton_3F")
self.formLayoutF.setWidget(5, QtWidgets.QFormLayout.FieldRole, self.pushButton_3F)
self.label_3F.setVisible(False)
self.checkBox_3F.setVisible(False)
self.pushButton_3F.setVisible(False)
self.checkBox_4F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_4F.setText("")
self.checkBox_4F.setObjectName("checkBox_4F")
self.formLayoutF.setWidget(6, QtWidgets.QFormLayout.LabelRole, self.checkBox_4F)
self.label_4F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_4F.setObjectName("label_4F")
self.formLayoutF.setWidget(6, QtWidgets.QFormLayout.FieldRole, self.label_4F)
self.pushButton_4F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_4F.setObjectName("pushButton_4F")
self.formLayoutF.setWidget(7, QtWidgets.QFormLayout.FieldRole, self.pushButton_4F)
self.label_4F.setVisible(False)
self.checkBox_4F.setVisible(False)
self.pushButton_4F.setVisible(False)
self.checkBox_5F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_5F.setText("")
self.checkBox_5F.setObjectName("checkBox_5F")
self.formLayoutF.setWidget(8, QtWidgets.QFormLayout.LabelRole, self.checkBox_5F)
self.label_5F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_5F.setObjectName("label_5F")
self.formLayoutF.setWidget(8, QtWidgets.QFormLayout.FieldRole, self.label_5F)
self.pushButton_5F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_5F.setObjectName("pushButton_5F")
self.formLayoutF.setWidget(9, QtWidgets.QFormLayout.FieldRole, self.pushButton_5F)
self.label_5F.setVisible(False)
self.checkBox_5F.setVisible(False)
self.pushButton_5F.setVisible(False)
self.checkBox_6F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_6F.setText("")
self.checkBox_6F.setObjectName("checkBox_6F")
self.formLayoutF.setWidget(10, QtWidgets.QFormLayout.LabelRole, self.checkBox_6F)
self.label_6F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_6F.setObjectName("label_6F")
self.formLayoutF.setWidget(10, QtWidgets.QFormLayout.FieldRole, self.label_6F)
self.pushButton_6F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_6F.setObjectName("pushButton_6F")
self.formLayoutF.setWidget(11, QtWidgets.QFormLayout.FieldRole, self.pushButton_6F)
self.label_6F.setVisible(False)
self.checkBox_6F.setVisible(False)
self.pushButton_6F.setVisible(False)
self.checkBox_7F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_7F.setText("")
self.checkBox_7F.setObjectName("checkBox_7F")
self.formLayoutF.setWidget(12, QtWidgets.QFormLayout.LabelRole, self.checkBox_7F)
self.label_7F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_7F.setObjectName("label_7F")
self.formLayoutF.setWidget(12, QtWidgets.QFormLayout.FieldRole, self.label_7F)
self.pushButton_7F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_7F.setObjectName("pushButton_7F")
self.formLayoutF.setWidget(13, QtWidgets.QFormLayout.FieldRole, self.pushButton_7F)
self.label_7F.setVisible(False)
self.checkBox_7F.setVisible(False)
self.pushButton_7F.setVisible(False)
self.checkBox_8F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_8F.setText("")
self.checkBox_8F.setObjectName("checkBox_8F")
self.formLayoutF.setWidget(14, QtWidgets.QFormLayout.LabelRole, self.checkBox_8F)
self.label_8F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_8F.setObjectName("label_8F")
self.formLayoutF.setWidget(14, QtWidgets.QFormLayout.FieldRole, self.label_8F)
self.pushButton_8F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_8F.setObjectName("pushButton_8F")
self.formLayoutF.setWidget(15, QtWidgets.QFormLayout.FieldRole, self.pushButton_8F)
self.label_8F.setVisible(False)
self.checkBox_8F.setVisible(False)
self.pushButton_8F.setVisible(False)
self.checkBox_9F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_9F.setText("")
self.checkBox_9F.setObjectName("checkBox_9F")
self.formLayoutF.setWidget(16, QtWidgets.QFormLayout.LabelRole, self.checkBox_9F)
self.label_9F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_9F.setObjectName("label_9F")
self.formLayoutF.setWidget(16, QtWidgets.QFormLayout.FieldRole, self.label_9F)
self.pushButton_9F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_9F.setObjectName("pushButton_9F")
self.formLayoutF.setWidget(17, QtWidgets.QFormLayout.FieldRole, self.pushButton_9F)
self.label_9F.setVisible(False)
self.checkBox_9F.setVisible(False)
self.pushButton_9F.setVisible(False)
self.checkBox_10F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_10F.setText("")
self.checkBox_10F.setObjectName("checkBox_10F")
self.formLayoutF.setWidget(18, QtWidgets.QFormLayout.LabelRole, self.checkBox_10F)
self.label_10F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_10F.setObjectName("label_10F")
self.formLayoutF.setWidget(18, QtWidgets.QFormLayout.FieldRole, self.label_10F)
self.pushButton_10F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_10F.setObjectName("pushButton_10F")
self.formLayoutF.setWidget(19, QtWidgets.QFormLayout.FieldRole, self.pushButton_10F)
self.label_10F.setVisible(False)
self.checkBox_10F.setVisible(False)
self.pushButton_10F.setVisible(False)
self.scrollAreaF.setWidget(self.scrollAreaWidgetContentsF)
self.gridLayoutF.addWidget(self.scrollAreaF, 2, 1, 1, 1)
self.retranslateUi(FormF)
QtCore.QMetaObject.connectSlotsByName(FormF)
def retranslateUi(self, FormF):
_translate = QtCore.QCoreApplication.translate
FormF.setWindowTitle(_translate("FormF", "Alarm"))
self.pushButton_pF.setText(_translate("FormF", "+"))
self.pushButtonF.setText(_translate("FormF", "Delate"))
self.labelF.setText(_translate("FormF", "TextLabel"))
self.pushButton_2F.setText(_translate("FormF", "Delate"))
self.label_2F.setText(_translate("FormF", "TextLabel"))
self.pushButton_3F.setText(_translate("FormF", "Delate"))
self.label_3F.setText(_translate("FormF", "TextLabel"))
self.pushButton_4F.setText(_translate("FormF", "Delate"))
self.label_4F.setText(_translate("FormF", "TextLabel"))
self.pushButton_5F.setText(_translate("FormF", "Delate"))
self.label_5F.setText(_translate("FormF", "TextLabel"))
self.pushButton_6F.setText(_translate("FormF", "Delate"))
self.label_6F.setText(_translate("FormF", "TextLabel"))
self.pushButton_7F.setText(_translate("FormF", "Dekate"))
self.label_7F.setText(_translate("Form", "TextLabel"))
self.pushButton_8F.setText(_translate("FormF", "Delate"))
self.label_8F.setText(_translate("FormF", "TextLabel"))
self.pushButton_9F.setText(_translate("FormF", "Delate"))
self.label_9F.setText(_translate("FormF", "TextLabel"))
self.pushButton_10F.setText(_translate("FormF", "Delate"))
self.label_10F.setText(_translate("FormF", "TextLabel"))
class Ui_DialogForm(QWidget):
def __init__(self):
super(Ui_DialogForm, self).__init__()
self.setupUi(self)
self.setWindowTitle('Alarm Editor')
def setupUi(self, DialogForm):
DialogForm.setObjectName("DialogForm")
DialogForm.resize(263, 135)
self.gridLayoutD = QtWidgets.QGridLayout(DialogForm)
self.gridLayoutD.setObjectName("gridLayoutD")
self.label_4D = QtWidgets.QLabel(DialogForm)
self.label_4D.setObjectName("label_4D")
self.gridLayoutD.addWidget(self.label_4D, 4, 0, 1, 1)
self.label_2D = QtWidgets.QLabel(DialogForm)
self.label_2D.setObjectName("label_2D")
self.gridLayoutD.addWidget(self.label_2D, 1, 0, 1, 1)
self.label_3D = QtWidgets.QLabel(DialogForm)
self.label_3D.setObjectName("label_3D")
self.gridLayoutD.addWidget(self.label_3D, 2, 0, 1, 1)
self.labelD = QtWidgets.QLabel(DialogForm)
self.labelD.setObjectName("labelD")
self.gridLayoutD.addWidget(self.labelD, 0, 0, 1, 1)
self.lineEditD = QtWidgets.QLineEdit(DialogForm)
self.lineEditD.setObjectName("lineEditD")
self.gridLayoutD.addWidget(self.lineEditD, 1, 2, 1, 1)
self.timeEditD = QtWidgets.QTimeEdit(DialogForm)
self.timeEditD.setObjectName("timeEditD")
self.gridLayoutD.addWidget(self.timeEditD, 2, 2, 1, 1)
self.buttonBoxD = QtWidgets.QDialogButtonBox(DialogForm)
self.buttonBoxD.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel | QtWidgets.QDialogButtonBox.Ok)
self.buttonBoxD.setObjectName("buttonBoxD")
self.gridLayoutD.addWidget(self.buttonBoxD, 0, 2, 1, 1)
self.label_5D = QtWidgets.QLabel(DialogForm)
self.label_5D.setObjectName("label_5D")
self.gridLayoutD.addWidget(self.label_5D, 4, 2, 1, 1)
self.pushButtonD = QtWidgets.QPushButton(DialogForm)
self.pushButtonD.setObjectName("pushButtonD")
self.gridLayoutD.addWidget(self.pushButtonD, 5, 2, 1, 1)
self.buttonBoxD.accepted.connect(self.accept)
self.buttonBoxD.rejected.connect(self.reject)
self.retranslateUi(DialogForm)
QtCore.QMetaObject.connectSlotsByName(DialogForm)
def retranslateUi(self, DialogForm):
_translate = QtCore.QCoreApplication.translate
self.label_4D.setText(_translate("DialogForm", "Melody:"))
self.label_2D.setText(_translate("DialogForm", "Name:"))
self.label_3D.setText(_translate("DialogForm", "Time:"))
self.labelD.setText(_translate("DialogForm", "Save your alarm?"))
self.label_5D.setText(_translate("DialogForm", "by default (wakey-wakey)"))
self.pushButtonD.setText(_translate("DialogForm", "Choose File"))
def accept(self):
global l
name = self.lineEditD.text()
time = self.timeEditD.text()
text = name + ' ' + time
melody = self.label_5D.text()
l[l.index(False)] = text
self.close()
def reject(self):
self.close()
class Error(QWidget):
def __init__(self):
super(Error, self).__init__()
self.setupUi(self)
self.setWindowTitle('Error')
def setupUi(self, eRRor):
eRRor.setObjectName("eRRor")
eRRor.resize(255, 63)
self.verticalLayoutE = QtWidgets.QVBoxLayout(eRRor)
self.verticalLayoutE.setObjectName("verticalLayoutE")
self.labelE = QtWidgets.QLabel(eRRor)
fontE = QtGui.QFont()
fontE.setPointSize(10)
self.labelE.setFont(fontE)
self.labelE.setObjectName("labelE")
self.verticalLayoutE.addWidget(self.labelE)
self.pushButtonE = QtWidgets.QPushButton(eRRor)
self.pushButtonE.setObjectName("pushButtonE")
self.verticalLayoutE.addWidget(self.pushButtonE)
self.pushButtonE.clicked.connect(self.error_close)
self.retranslateUi(eRRor)
QtCore.QMetaObject.connectSlotsByName(eRRor)
def retranslateUi(self, eRRor):
_translate = QtCore.QCoreApplication.translate
eRRor.setWindowTitle(_translate("eRRor", "eRRor"))
self.labelE.setText(_translate("eRRor", "Oops! You have reached your alarm limit!"))
self.pushButtonE.setText(_translate("eRRor", "Ok"))
def error_close(self):
self.close()
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
НИКОГДА Не изменяйте код, сгенерированный Qt Designer, НИКОГДА. Создайте другой класс, который наследуется от соответствующего виджета, и используйте созданный класс для его заполнения.
Глобальные переменные - это ЗЛО.
Ваш код может выглядеть примерно так:
import sys
from PyQt5 import QtCore, QtWidgets, QtGui
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtCore import QTime, QTimer
#from ui_watches import Ui_Form, Error, Ui_DialogForm, l
class Ui_Form(object):
# def __init__(self):
# super(Ui_Form, self).__init__()
# self.setWindowTitle('Alarm')
def setupUi(self, FormF):
FormF.setObjectName("FormF")
FormF.resize(264, 402)
self.gridLayoutF = QtWidgets.QGridLayout(FormF)
self.gridLayoutF.setObjectName("gridLayoutF")
self.lcdNumberF = QtWidgets.QLCDNumber(FormF)
self.lcdNumberF.setObjectName("lcdNumberF")
self.gridLayoutF.addWidget(self.lcdNumberF, 0, 1, 1, 2)
# self.timer = QTimer(self)
# self.timer.timeout.connect(self.showTime)
# self.timer.start(1000)
# self.showTime()
self.pushButton_pF = QtWidgets.QPushButton(FormF)
self.pushButton_pF.setObjectName("pushButton_pF")
self.gridLayoutF.addWidget(self.pushButton_pF, 7, 1, 1, 2)
self.lineF = QtWidgets.QFrame(FormF)
self.lineF.setFrameShape(QtWidgets.QFrame.HLine)
self.lineF.setFrameShadow(QtWidgets.QFrame.Sunken)
self.lineF.setObjectName("lineF")
self.gridLayoutF.addWidget(self.lineF, 1, 1, 1, 1)
self.scrollAreaF = QtWidgets.QScrollArea(FormF)
self.scrollAreaF.setWidgetResizable(True)
self.scrollAreaF.setObjectName("scrollAreaF")
self.scrollAreaWidgetContentsF = QtWidgets.QWidget()
self.scrollAreaWidgetContentsF.setGeometry(QtCore.QRect(0, 0, 221, 492))
self.scrollAreaWidgetContentsF.setObjectName("scrollAreaWidgetContentsF")
self.formLayoutF = QtWidgets.QFormLayout(self.scrollAreaWidgetContentsF)
self.formLayoutF.setObjectName("formLayoutF")
self.checkBoxF = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBoxF.setText("")
self.checkBoxF.setObjectName("checkBoxF")
self.formLayoutF.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.checkBoxF)
self.labelF = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.labelF.setObjectName("labelF")
self.formLayoutF.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.labelF)
self.pushButtonF = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButtonF.setObjectName("pushButtonF")
self.formLayoutF.setWidget(1, QtWidgets.QFormLayout.FieldRole, self.pushButtonF)
self.labelF.setVisible(False)
self.checkBoxF.setVisible(False)
self.pushButtonF.setVisible(False)
self.checkBox_2F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_2F.setText("")
self.checkBox_2F.setObjectName("checkBox_2F")
self.formLayoutF.setWidget(2, QtWidgets.QFormLayout.LabelRole, self.checkBox_2F)
self.label_2F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_2F.setObjectName("label_2F")
self.formLayoutF.setWidget(2, QtWidgets.QFormLayout.FieldRole, self.label_2F)
self.pushButton_2F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_2F.setObjectName("pushButton_2F")
self.formLayoutF.setWidget(3, QtWidgets.QFormLayout.FieldRole, self.pushButton_2F)
self.label_2F.setVisible(False)
self.checkBox_2F.setVisible(False)
self.pushButton_2F.setVisible(False)
self.checkBox_3F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_3F.setText("")
self.checkBox_3F.setObjectName("checkBox_2F")
self.formLayoutF.setWidget(4, QtWidgets.QFormLayout.LabelRole, self.checkBox_3F)
self.label_3F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_3F.setObjectName("label_3F")
self.formLayoutF.setWidget(4, QtWidgets.QFormLayout.FieldRole, self.label_3F)
self.pushButton_3F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_3F.setObjectName("pushButton_3F")
self.formLayoutF.setWidget(5, QtWidgets.QFormLayout.FieldRole, self.pushButton_3F)
self.label_3F.setVisible(False)
self.checkBox_3F.setVisible(False)
self.pushButton_3F.setVisible(False)
self.checkBox_4F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_4F.setText("")
self.checkBox_4F.setObjectName("checkBox_4F")
self.formLayoutF.setWidget(6, QtWidgets.QFormLayout.LabelRole, self.checkBox_4F)
self.label_4F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_4F.setObjectName("label_4F")
self.formLayoutF.setWidget(6, QtWidgets.QFormLayout.FieldRole, self.label_4F)
self.pushButton_4F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_4F.setObjectName("pushButton_4F")
self.formLayoutF.setWidget(7, QtWidgets.QFormLayout.FieldRole, self.pushButton_4F)
self.label_4F.setVisible(False)
self.checkBox_4F.setVisible(False)
self.pushButton_4F.setVisible(False)
self.checkBox_5F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_5F.setText("")
self.checkBox_5F.setObjectName("checkBox_5F")
self.formLayoutF.setWidget(8, QtWidgets.QFormLayout.LabelRole, self.checkBox_5F)
self.label_5F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_5F.setObjectName("label_5F")
self.formLayoutF.setWidget(8, QtWidgets.QFormLayout.FieldRole, self.label_5F)
self.pushButton_5F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_5F.setObjectName("pushButton_5F")
self.formLayoutF.setWidget(9, QtWidgets.QFormLayout.FieldRole, self.pushButton_5F)
self.label_5F.setVisible(False)
self.checkBox_5F.setVisible(False)
self.pushButton_5F.setVisible(False)
self.checkBox_6F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_6F.setText("")
self.checkBox_6F.setObjectName("checkBox_6F")
self.formLayoutF.setWidget(10, QtWidgets.QFormLayout.LabelRole, self.checkBox_6F)
self.label_6F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_6F.setObjectName("label_6F")
self.formLayoutF.setWidget(10, QtWidgets.QFormLayout.FieldRole, self.label_6F)
self.pushButton_6F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_6F.setObjectName("pushButton_6F")
self.formLayoutF.setWidget(11, QtWidgets.QFormLayout.FieldRole, self.pushButton_6F)
self.label_6F.setVisible(False)
self.checkBox_6F.setVisible(False)
self.pushButton_6F.setVisible(False)
self.checkBox_7F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_7F.setText("")
self.checkBox_7F.setObjectName("checkBox_7F")
self.formLayoutF.setWidget(12, QtWidgets.QFormLayout.LabelRole, self.checkBox_7F)
self.label_7F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_7F.setObjectName("label_7F")
self.formLayoutF.setWidget(12, QtWidgets.QFormLayout.FieldRole, self.label_7F)
self.pushButton_7F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_7F.setObjectName("pushButton_7F")
self.formLayoutF.setWidget(13, QtWidgets.QFormLayout.FieldRole, self.pushButton_7F)
self.label_7F.setVisible(False)
self.checkBox_7F.setVisible(False)
self.pushButton_7F.setVisible(False)
self.checkBox_8F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_8F.setText("")
self.checkBox_8F.setObjectName("checkBox_8F")
self.formLayoutF.setWidget(14, QtWidgets.QFormLayout.LabelRole, self.checkBox_8F)
self.label_8F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_8F.setObjectName("label_8F")
self.formLayoutF.setWidget(14, QtWidgets.QFormLayout.FieldRole, self.label_8F)
self.pushButton_8F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_8F.setObjectName("pushButton_8F")
self.formLayoutF.setWidget(15, QtWidgets.QFormLayout.FieldRole, self.pushButton_8F)
self.label_8F.setVisible(False)
self.checkBox_8F.setVisible(False)
self.pushButton_8F.setVisible(False)
self.checkBox_9F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_9F.setText("")
self.checkBox_9F.setObjectName("checkBox_9F")
self.formLayoutF.setWidget(16, QtWidgets.QFormLayout.LabelRole, self.checkBox_9F)
self.label_9F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_9F.setObjectName("label_9F")
self.formLayoutF.setWidget(16, QtWidgets.QFormLayout.FieldRole, self.label_9F)
self.pushButton_9F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_9F.setObjectName("pushButton_9F")
self.formLayoutF.setWidget(17, QtWidgets.QFormLayout.FieldRole, self.pushButton_9F)
self.label_9F.setVisible(False)
self.checkBox_9F.setVisible(False)
self.pushButton_9F.setVisible(False)
self.checkBox_10F = QtWidgets.QCheckBox(self.scrollAreaWidgetContentsF)
self.checkBox_10F.setText("")
self.checkBox_10F.setObjectName("checkBox_10F")
self.formLayoutF.setWidget(18, QtWidgets.QFormLayout.LabelRole, self.checkBox_10F)
self.label_10F = QtWidgets.QLabel(self.scrollAreaWidgetContentsF)
self.label_10F.setObjectName("label_10F")
self.formLayoutF.setWidget(18, QtWidgets.QFormLayout.FieldRole, self.label_10F)
self.pushButton_10F = QtWidgets.QPushButton(self.scrollAreaWidgetContentsF)
self.pushButton_10F.setObjectName("pushButton_10F")
self.formLayoutF.setWidget(19, QtWidgets.QFormLayout.FieldRole, self.pushButton_10F)
self.label_10F.setVisible(False)
self.checkBox_10F.setVisible(False)
self.pushButton_10F.setVisible(False)
self.scrollAreaF.setWidget(self.scrollAreaWidgetContentsF)
self.gridLayoutF.addWidget(self.scrollAreaF, 2, 1, 1, 1)
self.retranslateUi(FormF)
QtCore.QMetaObject.connectSlotsByName(FormF)
def retranslateUi(self, FormF):
_translate = QtCore.QCoreApplication.translate
FormF.setWindowTitle(_translate("FormF", "Alarm"))
self.pushButton_pF.setText(_translate("FormF", "+"))
self.pushButtonF.setText(_translate("FormF", "Delate"))
self.labelF.setText(_translate("FormF", "TextLabel"))
self.pushButton_2F.setText(_translate("FormF", "Delate"))
self.label_2F.setText(_translate("FormF", "TextLabel"))
self.pushButton_3F.setText(_translate("FormF", "Delate"))
self.label_3F.setText(_translate("FormF", "TextLabel"))
self.pushButton_4F.setText(_translate("FormF", "Delate"))
self.label_4F.setText(_translate("FormF", "TextLabel"))
self.pushButton_5F.setText(_translate("FormF", "Delate"))
self.label_5F.setText(_translate("FormF", "TextLabel"))
self.pushButton_6F.setText(_translate("FormF", "Delate"))
self.label_6F.setText(_translate("FormF", "TextLabel"))
self.pushButton_7F.setText(_translate("FormF", "Dekate"))
self.label_7F.setText(_translate("Form", "TextLabel"))
self.pushButton_8F.setText(_translate("FormF", "Delate"))
self.label_8F.setText(_translate("FormF", "TextLabel"))
self.pushButton_9F.setText(_translate("FormF", "Delate"))
self.label_9F.setText(_translate("FormF", "TextLabel"))
self.pushButton_10F.setText(_translate("FormF", "Delate"))
self.label_10F.setText(_translate("FormF", "TextLabel"))
class Ui_Error(object):
def setupUi(self, eRRor):
eRRor.setObjectName("eRRor")
eRRor.resize(255, 63)
self.verticalLayoutE = QtWidgets.QVBoxLayout(eRRor)
self.verticalLayoutE.setObjectName("verticalLayoutE")
self.labelE = QtWidgets.QLabel(eRRor)
fontE = QtGui.QFont()
fontE.setPointSize(10)
self.labelE.setFont(fontE)
self.labelE.setObjectName("labelE")
self.verticalLayoutE.addWidget(self.labelE)
self.pushButtonE = QtWidgets.QPushButton(eRRor)
self.pushButtonE.setObjectName("pushButtonE")
self.verticalLayoutE.addWidget(self.pushButtonE)
self.pushButtonE.clicked.connect(self.error_close)
self.retranslateUi(eRRor)
QtCore.QMetaObject.connectSlotsByName(eRRor)
def retranslateUi(self, eRRor):
_translate = QtCore.QCoreApplication.translate
eRRor.setWindowTitle(_translate("eRRor", "eRRor"))
self.labelE.setText(_translate("eRRor", "Oops! You have reached your alarm limit!"))
self.pushButtonE.setText(_translate("eRRor", "Ok"))
class Ui_DialogForm(object):
def setupUi(self, DialogForm):
DialogForm.setObjectName("DialogForm")
DialogForm.resize(263, 135)
self.gridLayoutD = QtWidgets.QGridLayout(DialogForm)
self.gridLayoutD.setObjectName("gridLayoutD")
self.label_4D = QtWidgets.QLabel(DialogForm)
self.label_4D.setObjectName("label_4D")
self.gridLayoutD.addWidget(self.label_4D, 4, 0, 1, 1)
self.label_2D = QtWidgets.QLabel(DialogForm)
self.label_2D.setObjectName("label_2D")
self.gridLayoutD.addWidget(self.label_2D, 1, 0, 1, 1)
self.label_3D = QtWidgets.QLabel(DialogForm)
self.label_3D.setObjectName("label_3D")
self.gridLayoutD.addWidget(self.label_3D, 2, 0, 1, 1)
self.labelD = QtWidgets.QLabel(DialogForm)
self.labelD.setObjectName("labelD")
self.gridLayoutD.addWidget(self.labelD, 0, 0, 1, 1)
self.lineEditD = QtWidgets.QLineEdit(DialogForm)
self.lineEditD.setObjectName("lineEditD")
self.gridLayoutD.addWidget(self.lineEditD, 1, 2, 1, 1)
self.timeEditD = QtWidgets.QTimeEdit(DialogForm)
self.timeEditD.setObjectName("timeEditD")
self.gridLayoutD.addWidget(self.timeEditD, 2, 2, 1, 1)
self.buttonBoxD = QtWidgets.QDialogButtonBox(DialogForm)
self.buttonBoxD.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel | QtWidgets.QDialogButtonBox.Ok)
self.buttonBoxD.setObjectName("buttonBoxD")
self.gridLayoutD.addWidget(self.buttonBoxD, 0, 2, 1, 1)
self.label_5D = QtWidgets.QLabel(DialogForm)
self.label_5D.setObjectName("label_5D")
self.gridLayoutD.addWidget(self.label_5D, 4, 2, 1, 1)
self.pushButtonD = QtWidgets.QPushButton(DialogForm)
self.pushButtonD.setObjectName("pushButtonD")
self.gridLayoutD.addWidget(self.pushButtonD, 5, 2, 1, 1)
# self.buttonBoxD.accepted.connect(self.accept)
# self.buttonBoxD.rejected.connect(self.reject)
self.retranslateUi(DialogForm)
QtCore.QMetaObject.connectSlotsByName(DialogForm)
def retranslateUi(self, DialogForm):
_translate = QtCore.QCoreApplication.translate
self.label_4D.setText(_translate("DialogForm", "Melody:"))
self.label_2D.setText(_translate("DialogForm", "Name:"))
self.label_3D.setText(_translate("DialogForm", "Time:"))
self.labelD.setText(_translate("DialogForm", "Save your alarm?"))
self.label_5D.setText(_translate("DialogForm", "by default (wakey-wakey)"))
self.pushButtonD.setText(_translate("DialogForm", "Choose File"))
class Error(QWidget, Ui_Error):
def __init__(self):
super(Error, self).__init__()
self.setupUi(self)
self.setWindowTitle('Error')
def error_close(self):
self.close()
class DialogForm(QWidget, Ui_DialogForm):
def __init__(self, l):
super(DialogForm, self).__init__()
self.setupUi(self)
self.setWindowTitle('Error')
self.l = l
self.buttonBoxD.accepted.connect(self.accept)
self.buttonBoxD.rejected.connect(self.reject)
def accept(self):
# global l
name = self.lineEditD.text()
time = self.timeEditD.text()
text = name + ' ' + time
melody = self.label_5D.text()
self.l[self.l.index(False)] = text
self.close()
def reject(self):
self.close()
class Watches(QWidget, Ui_Form):
def __init__(self):
# global dialog, error, labels
super().__init__()
self.setupUi(self)
self.setWindowTitle('Alarm')
self.pushButton_pF.clicked.connect(self.showDialog)
self.l = [False] * 10
self.timer = QTimer(self)
self.timer.timeout.connect(self.showTime)
self.timer.start(1000)
def showTime(self):
time = QTime.currentTime()
text = time.toString('hh:mm')
if (time.second() % 2) == 0:
text = text[:2] + ' ' + text[3:]
self.labelF.setText(str(self.l[0]))
self.label_2F.setText(str(self.l[1]))
self.label_3F.setText(str(self.l[2]))
self.label_4F.setText(str(self.l[3]))
self.label_5F.setText(str(self.l[4]))
self.label_6F.setText(str(self.l[5]))
self.label_7F.setText(str(self.l[6]))
self.label_8F.setText(str(self.l[7]))
self.label_9F.setText(str(self.l[8]))
self.label_10F.setText(str(self.l[9]))
if self.l[0]:
self.labelF.setVisible(True)
self.checkBoxF.setVisible(True)
self.pushButtonF.setVisible(True)
if self.l[1]:
self.label_2F.setVisible(True)
self.checkBox_2F.setVisible(True)
self.pushButton_2F.setVisible(True)
if self.l[2]:
self.label_3F.setVisible(True)
self.checkBox_3F.setVisible(True)
self.pushButton_3F.setVisible(True)
if self.l[3]:
self.label_4F.setVisible(True)
self.checkBox_4F.setVisible(True)
self.pushButton_4F.setVisible(True)
if self.l[4]:
self.label_5F.setVisible(True)
self.checkBox_5F.setVisible(True)
self.pushButton_5F.setVisible(True)
if self.l[5]:
self.label_6F.setVisible(True)
self.checkBox_6F.setVisible(True)
self.pushButton_6F.setVisible(True)
if self.l[6]:
self.label_7F.setVisible(True)
self.checkBox_7F.setVisible(True)
self.pushButton_7F.setVisible(True)
if self.l[7]:
self.label_8F.setVisible(True)
self.checkBox_8F.setVisible(True)
self.pushButton_8F.setVisible(True)
if self.l[8]:
self.label_9F.setVisible(True)
self.checkBox_9F.setVisible(True)
self.pushButton_9F.setVisible(True)
if self.l[9]:
self.label_10F.setVisible(True)
self.checkBox_10F.setVisible(True)
self.pushButton_10F.setVisible(True)
self.lcdNumberF.display(text)
def showDialog(self):
# global l, dialog, error
if self.l.count(False) == 0:
self.error = Error()
self.error.show()
else:
# self.dialog = Ui_DialogForm()
self.dialog = DialogForm(self.l) # + self.l
self.dialog.show()
def exept_hook(cls, exception, traceback):
sys.__excepthook__(cls, exception, traceback)
if __name__ == '__main__':
sys.exepthook = exept_hook
app = QApplication(sys.argv)
wtch = Watches()
wtch.show()
sys.exit(app.exec_())
