ich versuche mich gerade in meinem Praktikum daran aus einer Maschine Signale abzufangen und auszuwerten mittels Raspberry Pi. Fur die Oberflaeche nutze ich Qt-Designer. Eig funktioniert alles, doch ich habe das gefühl das es sicherlich eine Elegantere loesung gibt. Da auch die auslasung bei ca.35% liegt denke ich liegt es an meinem unreifen programmier style. Die GUI hat ca. 8Widgets.
Im Prinzip ist mein Programm wie im hier dargestellten mini Programm mit einem timeEdit Widget dargestellt :
Code: Alles auswählen
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.Qt import QLCDNumber, QDialog, QPushButton, QVBoxLayout, QApplication, QTimer
cycle_time = 0
class Ui_Form(QDialog):
def __init__(self):
super(Ui_Form, self).__init__()
self.timeEdit = QtWidgets.QTimeEdit(Form)
self.timer = QTimer()
self.timer.timeout.connect(self.Time)
self.Time()
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 300)
self.timeEdit.setGeometry(QtCore.QRect(70, 110, 271, 71))
self.timeEdit.setMaximumTime(QtCore.QTime(12, 59, 59))
self.timeEdit.setMinimumTime(QtCore.QTime(0, 0, 0))
self.timeEdit.setCurrentSection(QtWidgets.QDateTimeEdit.SecondSection)
self.timeEdit.setCalendarPopup(False)
self.timeEdit.setObjectName("timeEdit")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form"))
self.timeEdit.setDisplayFormat(_translate("Form", "mm:ss"))
def Time(self):
global cycle_time
cycle_time = self.timeEdit.time()
print(cycle_time)
self.timer.start(1000)
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
Form = QtWidgets.QWidget()
ui = Ui_Form()
ui.setupUi(Form)
Form.show()
sys.exit(app.exec_())
ps : ich bin Machienbauer und befasse mich mit Python seit ca.2-3 Wochen falls mein beispiel Code grobe Fehler enthaelt bitte nachsicht aber was ich nicht denke da es ja funktioniert haha