From a8e0253c24ccb7a85c5746a437bea23d0e076e0c Mon Sep 17 00:00:00 2001 From: artem Date: Fri, 28 Apr 2023 12:58:30 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B8=D0=BB(?= =?UTF-8?q?=D0=B0)=20=D0=BD=D0=B0=20'main2'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main2 | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/main2 b/main2 index aeb2cff..72a3c18 100644 --- a/main2 +++ b/main2 @@ -27,11 +27,16 @@ plot = None #Флаг также выводит оповещение о срабатывании """ + + +#Из функций led 1 2 3 нужно сделать метод класса, тк их работа аналогична, сл-но из 3х функций делаем одну, аргумент которой будет checked=True/False + +### Будущий класс def led1 (checked): #отвечает за включение первого светодиода if checked: #класс form это класс нашей формы, то есть окна приложения form.pushButton_2.setText("Выкл") #pushButton - это экземпляры класса formдля работы кнопок print("I'm worked too much") - form.label_24.hide() #label это текст на окне приложения + form.label_24.hide() #label это текст на окне приложения и его прячем form.label_20.show() # к экземпляру класса form применяется метод show(), для отображения виджета на экране else: form.label_20.hide() @@ -39,7 +44,7 @@ def led1 (checked): #отвечает за включение первого с form.pushButton_2.setText("Вкл") print ("I'm worked too") -def led2 (checked): #отвечает за включение второго светодиода +def led2 (checked): #отвечает за включение второго светодиода, работа функции аналогична предыдущей if checked: form.pushButton_3.setText("Выкл") print("I'm worked too much") @@ -51,7 +56,7 @@ def led2 (checked): #отвечает за включение второго с form.pushButton_3.setText("Вкл") print ("I'm worked too") -def led3 (checked): #отвечает за включение третьего светодиода +def led3 (checked): #отвечает за включение третьего светодиода, , работа функции аналогична предыдущей if checked: form.pushButton_4.setText("Выкл") print("I'm worked too much") @@ -64,7 +69,7 @@ def led3 (checked): #отвечает за включение третьего form.label_31.show() form.pushButton_4.setText("Вкл") print ("I'm worked too") - +### def updateLCD(): #функция,обновление дисплея, не принимает никаких значений global temp #глобальная переменная для работы с дисплеем @@ -87,7 +92,7 @@ led_data = { #список из словарей с начальными пар # практически одинаковое название 3 двух функц - +#---Функции vkl, vikl, color, led-clicked, send_Massage, get_Value по смыслу можно определить как методы одного класса, т.к они работают со списком словарей led_data, в основном они изменяют значения его элементов, формируют из него json пакеты, также по значению из словаря применяют методы к экземпл класса form def vkl(): for led in form.leds: #выставление значений светодиодов через экземпляр класса #осторожно! Одинаковые названия у объектов Led и JSON. @@ -195,11 +200,11 @@ def getValueFromMacket(): UpdatePlot(plot, valArr) else: form.textEdit.append('Ошибка при получении данных') - +#--- #json.load(file) @ACHT! Method to convert Str to JSON - +#--- Три функции на апдейт, делаем класс с 3мя методами, тут класс нужен просто для удобоваримого восприятия кода def update_pressure(p): form.lcd_pressure.display(p) @@ -219,7 +224,10 @@ def UpdatePlot(plot, val): bargraph = pg.BarGraphItem(x = x, height = val, width = 0.6, brush ='g') plot.clear() plot.addItem(bargraph) - +#--- + + +# Отдельная функция, не по смыслу, не по переменным не попадает ни в один из 3х возможных классов def Plots(form, valArr): widget = QWidget() plot = pg.plot() #создает объект PlotWidget из библиотеки PyqtGraph