华荣三照明、合信、荣欣八组合馈电

This commit is contained in:
冯佳
2025-06-25 11:36:43 +08:00
parent 37d39f4578
commit 25b3cb7f2e
494 changed files with 114074 additions and 0 deletions

View File

@ -0,0 +1,20 @@
{
"MicroPython.executeButton": [
{
"text": "▶",
"tooltip": "Run",
"alignment": "left",
"command": "extension.executeFile",
"priority": 3.5
}
],
"MicroPython.syncButton": [
{
"text": "$(sync)",
"tooltip": "sync",
"alignment": "left",
"command": "extension.execute",
"priority": 4
}
]
}

View File

@ -0,0 +1,788 @@
# This Python file uses the following encoding: utf-8
import sys
import time
from PyQt5.QtWidgets import QWidget, QLineEdit
from PyQt5.QtWidgets import QApplication, QMainWindow, QStackedWidget, QWidget, QLayout, QLabel, QLineEdit, QPushButton, QMessageBox, QShortcut, QDialog
from PyQt5 import uic
from PyQt5.QtCore import Qt, QThread, pyqtSignal, QObject, QRunnable, QMutex, QTimer, QEvent
from PyQt5.QtGui import QImage, QPixmap, QColor, QKeySequence
from PyQt5.QtTest import QTest
from KeyWidget import KetWidget
from UIFrameWork import UIFrameWork
from UIFrameWork import *
from CameraThread import CameraThread
from PyQt5.QtWidgets import QApplication, QMainWindow, QStackedWidget
from PyQt5.QtWidgets import QDesktopWidget
sys.path.append(sys.path[0] + "/../..")
import menu_utils as utils
import uart_group_config as group_config
from mqtt_device import class_comm_mqtt_thread, class_comm_mqtt_interface
from print_color import *
from get_tip_prop import *
from PyQt5.QtWidgets import QPushButton
sys_path = sys.path[0].replace("\\", "/")
# 页面文件
uiFile_P00DeviceList = sys_path + "/P00DeviceList.ui"
uiFile_P01DeviceMenu = sys_path + "/P01DeviceMenu.ui"
uiFile_P02DataView = sys_path + "/P02DataView.ui"
uiFile_P03SwitchAction = sys_path + "/P03SwitchAction.ui"
uiFile_P04ParamSet = sys_path + "/P04ParamSet.ui"
uiFile_P05CameraView = sys_path + "/P05CameraView.ui"
uiFile_P06FaultQuery = sys_path + "/P06FaultQuery.ui"
uiFile_P07SystemSet = sys_path + "/P07SystemSet.ui"
uiFile_P08FieldTestAction = sys_path + "/P08FieldTestAction.ui"
uiFile_P11LightDeviceMenu = sys_path + "/P11LightDeviceMenu.ui"
uiFile_P12LightDataView = sys_path + "/P12LightDataView.ui"
uiFile_P13LightSwitchAction = sys_path + "/P13LightSwitchAction.ui"
uiFile_P14LightParamSet = sys_path + "/P14LightParamSet.ui"
uiFile_P16LightFaultQuery = sys_path + "/P16LightFaultQuery.ui"
uiFile_P17LightSystemSet = sys_path + "/P17LightSystemSet.ui"
uiFile_P18LightFieldTestAction = sys_path + "/P18LightFieldTestAction.ui"
COLOR_RED = QColor("#EE2D2D").name()
COLOR_GREEN = QColor(Qt.green).name()
COLOR_BLUE = QColor(Qt.blue).name()
COLOR_YELLOW = QColor(Qt.yellow).name()
COLOR_NORMAL = QColor("#000000").name()
COLOR_ALARM_NORMAL = QColor("#ECECEC").name()
COLOR_ALARM_ERROR_TEXT = QColor("#B1E5FC").name()
COLOR_ALARM_ERROR_BG = QColor("#E17176").name()
COLOR_VALUE_NORMAL_YELLOW = QColor("#F8C822").name()
COLOR_VALUE_NORMAL_BLUE = QColor("#4E76D4").name()
COLOR_VALUE_NORMAL_READ = QColor("#CE5D62").name()
COLOR_VALUE_NORMAL_GREEN = QColor("#83BF6E").name()
def get_camera_id_and_canvas_id(action : str) :
camera_id = -1
canvas_id = -1
if "canvas" in action and "camera" in action :
action_splits = action.split("_")
for action_split_str in action_splits:
if "camera" in action_split_str:
camera_id = get_value_from_lead_value_str(action_split_str, "camera", -1)
elif "canvas" in action_split_str:
canvas_id = get_value_from_lead_value_str(action_split_str, "canvas", -1)
return camera_id, canvas_id
#根据回路选择摄像头url地址
def search_camera_url(camera_id : int) :
cameral_url = None
for config_dict in group_config.comm_thread_config :
device_list = utils.dict_or_object_get_attr(config_dict, "device_list", None)
if device_list != None :
for item_dict in device_list :
config_camera_id = utils.dict_or_object_get_attr(item_dict, "circuit_id", -1)
if config_camera_id == camera_id :
cameral_url = utils.dict_or_object_get_attr(item_dict, "camera_url", None)
if cameral_url != None :
return cameral_url
return cameral_url
menu_page_widget_list = []
class PageTemplate(UIFrameWork): # 页面模板类,包含各子页面公用功能
def __init__(self, parent_window): #
UIFrameWork.__init__(self) #
self.parent_window : APPWindow = parent_window
def connect_matched_camera_canvas(self) :
page_widget : UIFrameWork = self.parent_window.stack.currentWidget()
if page_widget != None :
for canvas_id in range(9) :
camera_id , face_detect = page_widget.get_canvas_prop(canvas_id)
if camera_id >= 0 :
self.parent_window.connect_camera_to_canvas(page_widget, camera_id, canvas_id, face_detect)
def virtual_connect_canvas_to_camera(self, canvas_id : int, camera_id : int, is_visible : bool = True) :
if camera_id >= 0 and canvas_id >= 0 and canvas_id < len(self.parent_window.camera_thread_list) :
face_detect = 0
canvas_object = self.search_canvas_object(canvas_id)
if canvas_object != None :
face_detect = get_tip_face_detection(canvas_object.statusTip())
camera_thread : CameraThread = self.parent_window.camera_thread_list[camera_id]
if camera_thread != None :
if not camera_thread.is_emit and is_visible:
self.show_camera_error(camera_id)
if camera_thread.is_emit:
self.connect_camera_thread(camera_thread, canvas_id, is_visible)
self.parent_window.camera_signal.emit(camera_id)
camera_thread.face_detection = face_detect
if hasattr(self, "CameraChioceLabel") :
# self.CameraChioceLabel.setStyleSheet("color: rgb(255, 255, 255); font-size: 50px;")
self.CameraChioceLabel.setText("回路" + str(camera_id+1))
else:
self.show_camera_error(camera_id)
def show_camera_error(self, camera_id) :
inform_box : DialogInform = DialogInform()
inform_box.information("提示", f"视频流{camera_id+1}无法初始化或失去连接!")
#定义虚函数, 进入页面时调用
def virtual_on_page_enter(self) :
pass
#定义虚函数, 退出页面时调用
def virtual_on_page_leave(self) :
pass
#重载虚函数, 切换页面时调用
def virtual_change_to_page(self, page) :
if self.parent_window == None :
return
self_page_widget : PageTemplate = self.parent_window.stack.currentWidget()
if self_page_widget == None :
return
target_page_widget : PageTemplate = None
if page >= 0 :
target_page_widget = self.parent_window.search_page_widget(page)
if target_page_widget in menu_page_widget_list:
while len(menu_page_widget_list) > 0 :
pop_page_widget = menu_page_widget_list.pop()
if pop_page_widget == None or pop_page_widget == target_page_widget:
break
else :
while len(menu_page_widget_list) > 0 :
pop_page_widget = menu_page_widget_list.pop()
if pop_page_widget == self :
continue
else :
target_page_widget = pop_page_widget
break
if target_page_widget == None :
target_page_widget = self.parent_window.allpages_list[0]
if target_page_widget != None :
menu_page_widget_list.append(target_page_widget)
self_page_widget.virtual_on_page_leave()
self.parent_window.stack.setCurrentWidget(target_page_widget)
target_page_widget.virtual_on_page_enter()
self.connect_matched_camera_canvas()
def virtual_widget_action_process(self, widget : QWidget, action : str) :
action_splits = action.split("+")
page_id = -1
circuit_id = -1
main_index = -1
add_circuit = -1
binding_circuit = -1
for action_split_str in action_splits :
if "SetPage" in action_split_str :
page_id = get_value_from_lead_value_str(action_split_str, "SetPage", -1)
elif "SetCircuit" in action_split_str :
circuit_id = get_value_from_lead_value_str(action_split_str, "SetCircuit", -1)
elif "SetMain" in action_split_str:
main_index = get_value_from_lead_value_str(action_split_str, "SetMain", -1)
elif "AddCircuit" in action_split_str :
add_circuit = get_value_from_lead_value_str(action_split_str, "AddCircuit", -1)
elif "SetBinding" in action_split_str :
binding_circuit = get_value_from_lead_value_str(action_split_str, "SetBinding", 1)
print("<virtual_widget_action_process>@Line:",inspect.currentframe().f_lineno,'<circuit_id> = ',circuit_id,'<Action> = ',action_splits)
if add_circuit >= 0 :
tip_str : str = page_widget.statusTip()
circuit_id = get_tip_circuit(tip_str)
circuit_id = circuit_id + 1
if binding_circuit > 0 :
circuit_id = self.get_circuit_from_object(widget)
target_page_widget = self.parent_window.search_page_widget(page_id)
page_widget : PageTemplate = target_page_widget
if page_id >= 0 : # 功能标记:执行页面跳转功能
target_page_widget = self.parent_window.search_page_widget(page_id)
if target_page_widget != None :
if circuit_id >= 0 :
target_page_widget.set_page_circuit(circuit_id)
self.virtual_change_to_page(page_id)
if main_index >= 0 : # 功能标记:执行控件主索引设定
self.set_menu_main_index(main_index) # 设置页面主索引字段<main>,可以跨组选择控件
if circuit_id >= 0 :
indicator : QLineEdit = target_page_widget.findChild(QLineEdit,"BindNum_Title")
indicator.setText("当前回路为 %d"%(circuit_id + 1))
# 显示提示图标
indicator_Label : QLabel = target_page_widget.findChild(QLabel,"indicator_Label")
tip_str : str = indicator_Label.statusTip()
imag_file_name = get_imag_value_file_name(tip_str, circuit_id)
if imag_file_name != None :
self.modify_object_style_sheet(indicator_Label, "background-image", "url(%s)"%(imag_file_name))
else :
self.reset_object_style_sheet(indicator_Label)
camera_id, canvas_id = get_camera_id_and_canvas_id(action)
self.virtual_connect_canvas_to_camera(canvas_id, camera_id)
#P00设备列表页面
class QDeviceListPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P00DeviceList)
# 回路1测试开关合闸1总开关0无报警
json_dict0 = { "SwitchStatus" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"SwitchType" : {"value" :"0", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"AlarmMessage" : {"value" :"无故障","type" : "alarm", "color" : COLOR_ALARM_NORMAL},
"Voltage" : {"value" :"1143", "color" : COLOR_VALUE_NORMAL_YELLOW},
"Current" : {"value" :"60", "color" : COLOR_VALUE_NORMAL_READ},
"Power" : {"value" :"20", "color" : COLOR_VALUE_NORMAL_BLUE},
"Electricity" : {"value" :"45321", "color" : COLOR_VALUE_NORMAL_GREEN},
}
# 回路2测试开关合闸1分开关1无报警
json_dict1 = { "SwitchStatus" : {"value" :"0", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"SwitchType" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"AlarmMessage" : {"value" :"开关未到位","type" : "alarm","color" : COLOR_ALARM_ERROR_TEXT},
"Voltage" : {"value" :"1120", "color" : COLOR_VALUE_NORMAL_YELLOW},
"Current" : {"value" :"45", "color" : COLOR_VALUE_NORMAL_READ},
"Power" : {"value" :"30", "color" : COLOR_VALUE_NORMAL_BLUE},
"Electricity" : {"value" :"46321", "color" : COLOR_VALUE_NORMAL_GREEN},
}
# 回路3测试开关合闸1总开关0无报警
json_dict2 = { "SwitchStatus" : {"value" :"0", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"SwitchType" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"AlarmMessage" : {"value" :"正常运行,无告警信息","type" : "alarm", "color" : COLOR_ALARM_NORMAL},
"Voltage" : {"value" :"1065", "color" : COLOR_VALUE_NORMAL_YELLOW},
"Current" : {"value" :"30", "color" : COLOR_VALUE_NORMAL_READ},
"Power" : {"value" :"16", "color" : COLOR_VALUE_NORMAL_BLUE},
"Electricity" : {"value" :"1321", "color" : COLOR_VALUE_NORMAL_GREEN},
}
# 回路4测试开关合闸1总开关0无报警
json_dict3 = { "SwitchStatus" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"SwitchType" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"AlarmMessage" : {"value" :"正常运行,无告警信息","type" : "alarm", "color" : COLOR_ALARM_NORMAL},
"Voltage" : {"value" :"1141", "color" : COLOR_VALUE_NORMAL_YELLOW},
"Current" : {"value" :"61", "color" : COLOR_VALUE_NORMAL_READ},
"Power" : {"value" :"26", "color" : COLOR_VALUE_NORMAL_BLUE},
"Electricity" : {"value" :"32321", "color" : COLOR_VALUE_NORMAL_GREEN},
}
# 回路5测试开关合闸1总开关0无报警
json_dict4 = { "SwitchStatus" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"SwitchType" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"AlarmMessage" : {"value" :"正常运行,无告警信息","type" : "alarm", "color" : COLOR_ALARM_NORMAL},
"Voltage" : {"value" :"2133", "color" : COLOR_VALUE_NORMAL_YELLOW},
"Current" : {"value" :"61", "color" : COLOR_VALUE_NORMAL_READ},
"Power" : {"value" :"26", "color" : COLOR_VALUE_NORMAL_BLUE},
"Electricity" : {"value" :"4453", "color" : COLOR_VALUE_NORMAL_GREEN},
}
# 回路6测试开关合闸1总开关0无报警
json_dict5 = { "SwitchStatus" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"SwitchType" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"AlarmMessage" : {"value" :"正常运行,无告警信息","type" : "alarm", "color" : COLOR_ALARM_NORMAL},
"Voltage" : {"value" :"1212", "color" : COLOR_VALUE_NORMAL_YELLOW},
"Current" : {"value" :"61", "color" : COLOR_VALUE_NORMAL_READ},
"Power" : {"value" :"27", "color" : COLOR_VALUE_NORMAL_BLUE},
"Electricity" : {"value" :"11212", "color" : COLOR_VALUE_NORMAL_GREEN},
}
# 回路7测试开关合闸1总开关0无报警
json_dict6 = { "SwitchStatus" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"SwitchType" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED},
"AlarmMessage" : {"value" :"正常运行,无告警信息","type" : "alarm", "color" : COLOR_ALARM_NORMAL},
"Voltage" : {"value" :"1564", "color" : COLOR_VALUE_NORMAL_YELLOW},
"Current" : {"value" :"61", "color" : COLOR_VALUE_NORMAL_READ},
"Power" : {"value" :"32", "color" : COLOR_VALUE_NORMAL_BLUE},
"Electricity" : {"value" :"45341", "color" : COLOR_VALUE_NORMAL_GREEN},
}
# self.flush_widgets(0, json_dict0)
# self.flush_widgets(1, json_dict1)
# self.flush_widgets(2, json_dict2)
# self.flush_widgets(3, json_dict3)
# # self.flush_widgets(4, json_dict4)
# # self.flush_widgets(5, json_dict5)
# # self.flush_widgets(6, json_dict6)
#P01设备列表页面
class QDeviceMenuPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P01DeviceMenu)
#P02数据查看页面
class QDataViewPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P02DataView)
json_dict0 = {"Uab" :"1111", "Ubc" : "1111", "Uca" : "1111", "Uo" : "11" , "Iab" : "1111", "Ibc" : "1111", "Ica" : "1111", "Io" : "1111"}
json_dict1 = {"Uab" :"2222", "Ubc" : "2222", "Uca" : "2222", "Uo" : "22" , "Iab" : "2222", "Ibc" : "2222", "Ica" : "2222", "Io" : "2222"}
json_dict2 = {"Uab" :"3333", "Ubc" : "3333", "Uca" : "3333", "Uo" : "33" , "Iab" : "3333", "Ibc" : "3333", "Ica" : "3333", "Io" : "3333"}
# self.flush_widgets(0, json_dict0)
# self.flush_widgets(1, json_dict1)
# self.flush_widgets(2, json_dict2)
self.camera_str = "0"
def virtual_on_page_enter(self):
children = self.findChildren(QLabel)
for child in children:
if child.objectName() == "TestCameraView" :
status_str = child.statusTip()
get_circuit = self.get_circuit_from_object(child)
print(status_str, get_circuit)
new_status_str = status_str.replace(f"camera{self.camera_str}", f"camera{get_circuit}")
self.camera_str = get_circuit
self.parent_window.camera_signal.emit(int(get_circuit))
child.setStatusTip(new_status_str)
#P03开关操作页面
class QSwitchActionPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P03SwitchAction)
json_dict0 = {"SwitchStatus" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED}}
json_dict1 = {"SwitchStatus" : {"value" :"0", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED}}
json_dict2 = {"SwitchStatus" : {"value" :"1", "bk_color" : COLOR_NORMAL, "color" : COLOR_RED}}
self.flush_widgets(0, json_dict0)
self.flush_widgets(1, json_dict1)
self.flush_widgets(2, json_dict2)
self.camera_str = "0"
def virtual_on_page_enter(self):
children = self.findChildren(QLabel)
for child in children:
if child.objectName() == "TestCameraView" :
status_str = child.statusTip()
get_circuit = self.get_circuit_from_object(child)
print(status_str, get_circuit)
new_status_str = status_str.replace(f"camera{self.camera_str}", f"camera{get_circuit}")
self.camera_str = get_circuit
self.parent_window.camera_signal.emit(int(get_circuit))
child.setStatusTip(new_status_str)
#P04参数设置页面
class QParamSetPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P04ParamSet)
json_dict0 = {"Uab" :"1000", "Ubc" : "5", "Uca" : "50"}
json_dict1 = {"Uab" :"1111", "Ubc" : "111", "Uca" : "111"}
json_dict2 = {"Uab" :"2222", "Ubc" : "222", "Uca" : "222"}
self.flush_widgets(0, json_dict0)
self.flush_widgets(1, json_dict1)
self.flush_widgets(2, json_dict2)
#P05视频查看页面 QFaultQueryPage
class QCameraViewPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P05CameraView)
def virtual_on_page_enter(self) :
self.parent_window.camera_signal.emit(0)
#P06故障查询页面 QFaultQueryPage
class QFaultQueryPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P06FaultQuery)
self.alarm_index = 0
def virtual_on_page_enter(self) :
self.alarm_index = 0
self.query_alarm_index()
self.timer = QTimer()
self.timer.timeout.connect(self.query_alarm_index)
self.timer.start(4000)
def virtual_on_page_leave(self) :
self.alarm_index = 0
def query_alarm_index(self):
circuit_id = self.get_page_circuit()
unique_name = self.get_unique_name_from_circuit(circuit_id)
if unique_name != None :
publish_topic = "request/alarm/" + unique_name
publish_message = '{"index" : "%s"}'%(self.alarm_index)
self.mqtt_publish_and_wait_response(publish_topic, publish_message, object, 1000)
#action 处理虚函数, 只适用于故障查询页面
def virtual_widget_action_process(self, widget : QWidget, action : str) :
PageTemplate.virtual_widget_action_process(self, widget, action)
alarm_adjust = 0
if "CmdAlarmNext" in action :
alarm_adjust = 1
elif "CmdAlarmPrev" in action :
alarm_adjust = -1
if alarm_adjust != 0 :
self.alarm_index = self.alarm_index + alarm_adjust
if self.alarm_index < 0 :
self.alarm_index = 0
self.query_alarm_index()
#P07系统参数设置页面
class QSystemSetPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P07SystemSet)
#P08现场试验页面
class QFieldTestAction(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P08FieldTestAction)
# P11照明菜单选择
class QLightMenuPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P11LightDeviceMenu)
# P12照明运行数据页面
class QRunDataPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P12LightDataView)
self.camera_str = "0"
def virtual_on_page_enter(self):
children = self.findChildren(QLabel)
for child in children:
if child.objectName() == "TestCameraView" :
status_str = child.statusTip()
get_circuit = self.get_circuit_from_object(child)
print(status_str, get_circuit)
new_status_str = status_str.replace(f"camera{self.camera_str}", f"camera{get_circuit}")
self.camera_str = get_circuit
self.parent_window.camera_signal.emit(int(get_circuit))
child.setStatusTip(new_status_str)
# P13照明开关操作页面
class QLightSwitchActionPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P13LightSwitchAction)
self.camera_str = "0"
def virtual_on_page_enter(self):
children = self.findChildren(QLabel)
for child in children:
if child.objectName() == "TestCameraView" :
status_str = child.statusTip()
get_circuit = self.get_circuit_from_object(child)
print(status_str, get_circuit)
new_status_str = status_str.replace(f"camera{self.camera_str}", f"camera{get_circuit}")
self.camera_str = get_circuit
self.parent_window.camera_signal.emit(int(get_circuit))
child.setStatusTip(new_status_str)
# P14照明参数设置页面
class QLightParamSetPage(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P14LightParamSet)
# P16照明故障查询
class QLightFaultQuery(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P16LightFaultQuery)
def virtual_on_page_enter(self) :
self.alarm_index = 0
self.query_alarm_index()
self.timer = QTimer()
self.timer.timeout.connect(self.query_alarm_index)
self.timer.start(4000)
def virtual_on_page_leave(self) :
self.alarm_index = 0
def query_alarm_index(self):
circuit_id = self.get_page_circuit()
unique_name = self.get_unique_name_from_circuit(circuit_id)
if unique_name != None :
publish_topic = "request/alarm/" + unique_name
publish_message = '{"index" : "%s"}'%(self.alarm_index)
self.mqtt_publish_and_wait_response(publish_topic, publish_message, object, 1000)
#action 处理虚函数, 只适用于故障查询页面
def virtual_widget_action_process(self, widget : QWidget, action : str) :
PageTemplate.virtual_widget_action_process(self, widget, action)
alarm_adjust = 0
if "CmdAlarmNext" in action :
alarm_adjust = 1
elif "CmdAlarmPrev" in action :
alarm_adjust = -1
if alarm_adjust != 0 :
self.alarm_index = self.alarm_index + alarm_adjust
if self.alarm_index < 0 :
self.alarm_index = 0
self.query_alarm_index()
# P17照明系统参数
class QLightSystemSet(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P17LightSystemSet)
# P18现场试验页面
class QLightFieldTestAction(PageTemplate):
def __init__(self, parent_window):
PageTemplate.__init__(self, parent_window)
self.load_window_ui(uiFile_P18LightFieldTestAction)
class APPWindow(QMainWindow):
camera_signal = pyqtSignal(int)
def __init__(self):
super().__init__()
# 获取屏幕分辨率
screen = QDesktopWidget().screenGeometry()
screen_width = screen.width()
screen_height = screen.height()
self.stack = QStackedWidget(self)
self.setGeometry(0, 0, screen_width, screen_height) # 设置窗口大小为屏幕分辨率
self.stack.setGeometry(0, 0, screen_width, screen_height) # 设置堆叠窗口大小为屏幕分辨率
#调试的时候用下面两行,全屏就注释
# self.setGeometry(0, 0, 1024, 768)
# self.stack.setGeometry(0, 0, 1024, 768)
# self.float_button1 = QPushButton("↑", self)
# self.float_button1.move(self.width() - 200, self.height() - 200)
# self.float_button1.setFixedSize(90, 90)
# self.float_button1.clicked.connect(self.focus_do_inscrease)
# self.float_button2 = QPushButton("↓", self)
# self.float_button2.move(self.width() - 200, self.height() - 100)
# self.float_button2.setFixedSize(90, 90)
# self.float_button2.clicked.connect(self.focus_do_decrease)
# self.float_button3 = QPushButton("enter", self)
# self.float_button3.move(self.width() - 100, self.height() - 200)
# self.float_button3.setFixedSize(90, 90)
# self.float_button3.clicked.connect(self.focus_do_action)
# self.float_button4 = QPushButton("esc", self)
# self.float_button4.move(self.width() - 100, self.height() - 100)
# self.float_button4.setFixedSize(90, 90)
# self.float_button4.clicked.connect(self.focus_do_escape)
# self.show_hide_button = QPushButton("show/hide", self)
# self.show_hide_button.move(self.width()-10, self.height() - 100)
# self.show_hide_button.setFixedSize(90, 90)
# self.show_hide_button.clicked.connect(self.focus_show_hide)
# self.kw = KetWidget(self)
# self.setLayout(QVBoxLayout())
# self.layout().addWidget(self.kw)
self.showFullScreen()
self.menu_sequence_list : PageTemplate = []
self.camera_thread_list : CameraThread = [None, None, None, None, None, None, None, None, None]
self.allpages_list : PageTemplate = []
self.P00_DeviceList : PageTemplate = QDeviceListPage(parent_window = self)
self.P01_DeviceMenu : PageTemplate = QDeviceMenuPage(parent_window = self)
self.P02_DataView : PageTemplate = QDataViewPage(parent_window = self)
self.P03_SwitchAction : PageTemplate = QSwitchActionPage(parent_window = self)
self.P04_ParamSet : PageTemplate = QParamSetPage(parent_window = self)
self.P05_CameraView : PageTemplate = QCameraViewPage(parent_window = self)
self.P06_FaultQuery : PageTemplate = QFaultQueryPage(parent_window = self)
self.P07_SystemSet : PageTemplate = QSystemSetPage(parent_window = self)
self.P08_FieldTestAction : PageTemplate = QFieldTestAction(parent_window = self)
self.P11_DeviceMenu : PageTemplate = QLightMenuPage(parent_window = self)
self.P12_DateView : PageTemplate = QRunDataPage(parent_window = self)
self.P13_SwitchAction : PageTemplate = QLightSwitchActionPage(parent_window = self)
self.P14_ParamSet : PageTemplate = QLightParamSetPage(parent_window = self)
self.P16_LightFaultQuery : PageTemplate = QLightFaultQuery(parent_window = self)
self.P17_LightSystemSet : PageTemplate = QLightSystemSet(parent_window = self)
self.P18_LightFieldTestAction : PageTemplate = QLightFieldTestAction(parent_window = self)
self.allpages_list.append(self.P00_DeviceList)
self.allpages_list.append(self.P01_DeviceMenu)
self.allpages_list.append(self.P02_DataView)
self.allpages_list.append(self.P03_SwitchAction)
self.allpages_list.append(self.P04_ParamSet)
self.allpages_list.append(self.P05_CameraView)
self.allpages_list.append(self.P06_FaultQuery)
self.allpages_list.append(self.P07_SystemSet)
self.allpages_list.append(self.P08_FieldTestAction)
self.allpages_list.append(self.P11_DeviceMenu)
self.allpages_list.append(self.P12_DateView)
self.allpages_list.append(self.P13_SwitchAction)
self.allpages_list.append(self.P14_ParamSet)
self.allpages_list.append(self.P16_LightFaultQuery)
self.allpages_list.append(self.P17_LightSystemSet)
self.allpages_list.append(self.P18_LightFieldTestAction)
self.stack.addWidget(self.P00_DeviceList)
self.stack.addWidget(self.P01_DeviceMenu)
self.stack.addWidget(self.P02_DataView)
self.stack.addWidget(self.P03_SwitchAction)
self.stack.addWidget(self.P04_ParamSet)
self.stack.addWidget(self.P05_CameraView)
self.stack.addWidget(self.P06_FaultQuery)
self.stack.addWidget(self.P07_SystemSet)
self.stack.addWidget(self.P08_FieldTestAction)
self.stack.addWidget(self.P11_DeviceMenu)
self.stack.addWidget(self.P12_DateView)
self.stack.addWidget(self.P13_SwitchAction)
self.stack.addWidget(self.P14_ParamSet)
self.stack.addWidget(self.P16_LightFaultQuery)
self.stack.addWidget(self.P17_LightSystemSet)
self.stack.addWidget(self.P18_LightFieldTestAction)
test_init = system_parameter()
set_screen_blanking_time(test_init.get_screen_blanking_time())
def search_page_widget(self, page) :
for list_item in self.allpages_list:
window_page : UIFrameWork = list_item
if window_page.page == page :
return window_page
return None
def connect_camera_to_canvas(self, page_widget : UIFrameWork, camera_id: int , canvas_id : int, face_detect : int = 0) :
if camera_id >= 0 and canvas_id >= 0 and canvas_id < len(self.camera_thread_list) :
camera_thread : CameraThread = self.camera_thread_list[camera_id]
if camera_thread != None :
page_widget.connect_camera_thread(camera_thread, canvas_id)
camera_thread.face_detection = face_detect
def create_all_camera_thread(self) :
for camera_id in range(len(self.camera_thread_list)) :
_camera_url = search_camera_url(camera_id)
if _camera_url != None :
camera_thread = CameraThread(_camera_url, camera_id)
camera_thread.set_video_cycle_ms(10)
self.camera_thread_list[camera_id] = camera_thread
self.camera_signal.connect(camera_thread.change_camera_url)
#摄像头与 界面进行绑定
for index in range(self.stack.count()) :
page_widget : UIFrameWork = self.stack.widget(index)
page_widget.connect_matched_camera_canvas()
time.sleep(0.1)
#开启多个摄像头线程
for camera_thread in self.camera_thread_list:
thread_to_start : CameraThread = camera_thread
if thread_to_start != None :
thread_to_start.start()
time.sleep(0.01)
# def focus_do_inscrease(self) :
# self.stack.currentWidget().key_decrease_parameter()
# def focus_do_decrease(self) :
# self.stack.currentWidget().key_increase_parameter()
# def focus_do_action(self) :
# self.stack.currentWidget().key_enter_process()
# def focus_do_escape(self) :
# self.stack.currentWidget().key_escape_process()
# def focus_show_hide(self) :
# if self.float_button1.isHidden() :
# self.float_button1.show()
# self.float_button2.show()
# self.float_button3.show()
# self.float_button4.show()
# else :
# self.float_button1.hide()
# self.float_button2.hide()
# self.float_button3.hide()
# self.float_button4.hide()
def get_page_currentwidget(self) :
return self.stack.currentWidget().sort_menu_list[self.stack.currentWidget().menu_key_index][1]
def closeEvent(self, event):
# 在这里处理关闭事件
# 例如,提示用户是否真的想要关闭
reply = QMessageBox.question(self, '确认', '确定要退出吗?',
QMessageBox.Yes | QMessageBox.No)
if reply == QMessageBox.Yes:
for camera_thread in self.camera_thread_list:
thread_to_stop : CameraThread = camera_thread
if thread_to_stop != None :
thread_to_stop.close()
for camera_thread in self.camera_thread_list:
thread_to_stop : CameraThread = camera_thread
if thread_to_stop != None :
thread_to_stop.wait()
event.accept() # 接受关闭事件
else:
event.ignore() # 忽略关闭事件
if __name__ == '__main__':
#创建mqtt线程
fvalue = float('06.00')
value = round(fvalue)
_user_name = utils.dict_or_object_get_attr(group_config.mqtt_server, "user_name", "admin")
_password = utils.dict_or_object_get_attr(group_config.mqtt_server, "password", "admin")
_server = utils.dict_or_object_get_attr(group_config.mqtt_server, "remote", "127.0.0.1")
_port = utils.dict_or_object_get_attr(group_config.mqtt_server, "port", 1883)
global_mqtt_thread = class_comm_mqtt_thread()
global_mqtt_thread.set_mqtt_server(server = _server, port = _port, keep_alive = 60, user_name=_user_name, password=_password)
app = QApplication([])
app_main_window = APPWindow()
app_main_window.show()
app_main_window.create_all_camera_thread()
for config_dict in group_config.comm_thread_config :
device_list = utils.dict_or_object_get_attr(config_dict, "device_list", None)
if device_list != None :
for item_dict in device_list :
circuit_id = utils.dict_or_object_get_attr(item_dict, "circuit_id", -1)
circuit_unique_name = utils.dict_or_object_get_attr(item_dict, "unique_name", None)
if circuit_unique_name != None :
global_mqtt_thread.add_unique_object(circuit_unique_name, app_main_window.allpages_list)
global_mqtt_thread.start()
app.exec_()
global_mqtt_thread.close()
global_mqtt_thread.join()
sys.exit(0)

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -0,0 +1,163 @@
import sys
import cv2
import time
from PyQt5.QtCore import QThread, pyqtSignal, QObject
sys_path = sys.path[0].replace("\\", "/")
sys_path_linux = sys.path[0] + "/../.."
if sys_path_linux not in sys.path:
sys.path.append(sys_path_linux)
from print_color import *
DEFAULT_VIDEO_SLEEP_MS = 20
# 图像处理线程
class ImageProcessingThread(QThread):
processed_image_signal = pyqtSignal(object)
def __init__(self):
super().__init__()
def run(self):
while True:
# 在这里添加图像处理代码
# 这里暂时只是将图像传递给下一个线程
time.sleep(0.01)
self.processed_image_signal.emit(None)
# 摄像头采集线程
class CameraThread(QThread):
image_signal = pyqtSignal(object)
def __init__(self, camera_url, circuit_id: int = 0):
super().__init__()
self.camera_url = camera_url # 摄像头url地址, 整数 或者 字符串
self.face_detection: bool = False
if isinstance(camera_url, int):
self.camera_url_str = str(camera_url)
else:
self.camera_url_str = camera_url
self.cap: cv2.VideoCapture = None
self.running: bool = True
self.fps = 0
self.cycle_limit = DEFAULT_VIDEO_SLEEP_MS
self.cycle_ms = 0
self.circuit_id = circuit_id # 摄像头对应的回路, 组合开关每一个回路都有对应的摄像头
self.is_signal_connect = False
self.is_emit = False
self.set_video_cycle_ms(2000)
def signal_connect(self, slot_func):
self.image_signal.connect(slot_func)
self.is_signal_connect = True
def signal_disconnect(self):
# 判断信号是否已连接
if self.is_signal_connect:
self.image_signal.disconnect()
self.is_signal_connect = False
def set_video_cycle_ms(self, cycle_ms: int = 10):
if self.cycle_limit != cycle_ms:
if cycle_ms <= DEFAULT_VIDEO_SLEEP_MS:
self.cycle_limit = DEFAULT_VIDEO_SLEEP_MS
else:
self.cycle_limit = cycle_ms
# 新建函数,改变函数延时方法
def change_camera_url(self, camera_url: str):
if self.circuit_id == camera_url:
self.set_video_cycle_ms(DEFAULT_VIDEO_SLEEP_MS)
else:
self.set_video_cycle_ms(1000)
def close(self):
if self.cap == None: # 初始化一直未完成
self.terminate()
self.running = False
def run(self):
process_count = 0
fps_time = 0
while self.running == True:
inform_msg = "cameral init start, url = " + self.camera_url_str
print_inform_msg(inform_msg)
try:
if isinstance(self.camera_url, int):
# 在 Windows 平台下,使用默认的 cv2.VideoCapture 接口
self.cap = cv2.VideoCapture(self.camera_url, cv2.CAP_DSHOW)
else:
# 在 Linux 平台下,使用默认的 cv2.VideoCapture 接口
self.cap = cv2.VideoCapture(self.camera_url)
if self.cap != None:
inform_msg = "cameral Init Success, url = " + self.camera_url_str
self.is_emit = True
print_inform_msg(inform_msg)
else:
inform_msg = "cameral connection timeout, url = " + self.camera_url_str
print_inform_msg(inform_msg)
except Exception as e:
self.cap = None
inform_msg = "cameral camera Init Fail, url = " + self.camera_url_str
print_error_msg(inform_msg)
base_time = time.time()
while self.running and self.cap != None:
# 延时20ms
time.sleep(DEFAULT_VIDEO_SLEEP_MS / 1000)
if self.cycle_ms + DEFAULT_VIDEO_SLEEP_MS < self.cycle_limit:
self.cycle_ms += DEFAULT_VIDEO_SLEEP_MS
self.cap.grab() # 抛弃多余的帧,保持最新帧
continue
else:
self.cycle_ms = 0
try:
ret, frame = self.cap.read()
cur_time = time.time()
execution_time = cur_time - base_time
base_time = cur_time
process_count += 1
fps_time += execution_time
if fps_time >= 1:
self.fps = process_count
process_count = 0
fps_time = 0
if execution_time < 5:
image_object: QObject = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
self.image_signal.emit(image_object)
else: # 时间差大于5秒, 表示网络可能中断过, 退出并重新连接
err_message = "cameral read timeout, url = " + self.camera_url_str
print_error_msg(err_message)
break
except Exception as e:
err_message = "cameral read timeout, url = " + self.camera_url_str
self.is_emit = False
print_error_msg(err_message)
if self.running == True:
time.sleep(2)
break
print_inform_msg("cameral connection End")
time.sleep(0.01)
if self.cap != None:
self.cap.release()
self.cap = None

View File

@ -0,0 +1,60 @@
import sys
from PyQt5.QtWidgets import QApplication, QDialog, QLabel, QLineEdit, QWidget, QPushButton, QMessageBox, QComboBox, QDialogButtonBox, QShortcut
from PyQt5 import uic
from PyQt5.QtGui import QKeySequence
from PyQt5.QtCore import Qt, QEvent, QObject, QTimer
ui_file_path = sys.path[0] + "/DialogInform.ui"
class DialogInform(QDialog):
def __init__(self, parent=None):
super(DialogInform, self).__init__(parent)
# Load UI file
uic.loadUi(ui_file_path, self)
label :QLabel = self.label
label.setText("")
label.setWordWrap(True) # 允许文本自动换行
self.message_timer = QTimer()
self.message_timer.timeout.connect(self.close_dialog_timeout)
self.setWindowTitle("消息提示")
self.setWindowFlag(Qt.FramelessWindowHint)
button_box : QDialogButtonBox = self.buttonBox
button_box.button(QDialogButtonBox.Ok).setText('确定')
#定义4个快捷键, Key_Enter, Key_Escape经常被各类程序模块使用, 用Key_End, 与Key_Home来代替
QShortcut(QKeySequence(Qt.Key_PageDown), self, activated=self.key_enter_process)
QShortcut(QKeySequence(Qt.Key_PageUp), self, activated=self.key_escape_process)
QShortcut(QKeySequence(Qt.Key_End), self, activated=self.key_enter_process)
QShortcut(QKeySequence(Qt.Key_Home), self, activated=self.key_escape_process)
def information(self, title : str, message : str, timeout_ms : int = 2000) :
self.setWindowTitle(title)
label :QLabel = self.label
label.setText(message)
self.message_timer.start(timeout_ms)
self.exec()
def key_enter_process(self):
button_box : QDialogButtonBox = self.buttonBox
select_button = button_box.button(QDialogButtonBox.Ok)
if select_button:
select_button.click()
def key_escape_process(self):
button_box : QDialogButtonBox = self.buttonBox
select_button = button_box.button(QDialogButtonBox.Cancel)
if select_button:
select_button.click()
#消息超时
def close_dialog_timeout(self):
self.key_enter_process()
if __name__ == '__main__':
app = QApplication(sys.argv)
dialog = DialogInform()
dialog.exec()
sys.exit(0)

View File

@ -0,0 +1,123 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>DialogInform</class>
<widget class="QDialog" name="DialogInform">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>587</width>
<height>231</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<property name="autoFillBackground">
<bool>false</bool>
</property>
<property name="styleSheet">
<string notr="true">border:none;
background-color: rgba(0, 0, 0, 0);</string>
</property>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="geometry">
<rect>
<x>110</x>
<y>160</y>
<width>381</width>
<height>32</height>
</rect>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Ok</set>
</property>
</widget>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>120</x>
<y>100</y>
<width>361</width>
<height>51</height>
</rect>
</property>
<property name="font">
<font>
<family>Microsoft YaHei UI</family>
<pointsize>14</pointsize>
<italic>false</italic>
<bold>false</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);
font: 14pt &quot;Microsoft YaHei UI&quot;;</string>
</property>
<property name="text">
<string>TextLabel</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QLabel" name="BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>731</width>
<height>231</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>BG09_002.png</pixmap>
</property>
</widget>
<zorder>BG</zorder>
<zorder>buttonBox</zorder>
<zorder>label</zorder>
</widget>
<resources/>
<connections>
<connection>
<sender>buttonBox</sender>
<signal>accepted()</signal>
<receiver>DialogInform</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>248</x>
<y>254</y>
</hint>
<hint type="destinationlabel">
<x>157</x>
<y>274</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>DialogInform</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>316</x>
<y>260</y>
</hint>
<hint type="destinationlabel">
<x>286</x>
<y>274</y>
</hint>
</hints>
</connection>
</connections>
</ui>

View File

@ -0,0 +1,129 @@
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QDialog, QLabel, QVBoxLayout, QPushButton, QMessageBox, QComboBox, QDialogButtonBox, QShortcut
from PyQt5 import uic
from PyQt5.QtGui import QKeySequence
from PyQt5.QtCore import Qt, QEvent, QObject
import json
from print_color import *
sys_path = sys.path[0].replace("\\", "/")
ui_file_path = sys_path + "/DialogModifyAlias.ui"
class DialogModifyAlias(QDialog):
def __init__(self, main_window, parent=None):
super(DialogModifyAlias, self).__init__(parent)
# Load UI file
uic.loadUi(ui_file_path, self)
combo : QComboBox = self.comboBox
combo.clear()
self.alias_item_dict = {}
self.main_window = main_window
self.setWindowTitle("别名参数修改")
self.setWindowFlag(Qt.FramelessWindowHint)
self.buttonBox.button(QDialogButtonBox.Ok).setText('确定')
self.buttonBox.button(QDialogButtonBox.Cancel).setText('取消')
self.buttonBox.clicked.connect(self.dialog_button_ok_clicked)
#定义4个快捷键, Key_Enter, Key_Escape经常被各类程序模块使用, 用Key_End, 与Key_Home来代替
QShortcut(QKeySequence(Qt.Key_Up), self, activated=self.key_increase_parameter)
QShortcut(QKeySequence(Qt.Key_Down), self, activated=self.key_decrease_parameter)
QShortcut(QKeySequence(Qt.Key_PageDown), self, activated=self.key_enter_process)
QShortcut(QKeySequence(Qt.Key_PageUp), self, activated=self.key_escape_process)
QShortcut(QKeySequence(Qt.Key_End), self, activated=self.key_enter_process)
QShortcut(QKeySequence(Qt.Key_Home), self, activated=self.key_escape_process)
def set_caption_name(self, name : str) :
label : QLabel = self.label
label.setText(name)
def key_increase_parameter(self):
combo : QComboBox = self.comboBox
index = combo.currentIndex()
index += 1
if index >= combo.count() :
index = 0
combo.setCurrentIndex(index)
def key_decrease_parameter(self):
combo : QComboBox = self.comboBox
index = combo.currentIndex()
index -= 1
if index < 0 :
index = combo.count() - 1
combo.setCurrentIndex(index)
def get_alias_key_str(self):
combo : QComboBox = self.comboBox
select_text = combo.currentText()
alias_key = None
for alias_key, alias_str in self.alias_item_dict.items() :
if alias_str == select_text :
return alias_key
return alias_key
@property
def value(self):
alias_key = self.get_alias_key_str()
return alias_key
def modify_alias_value(self, modify_str) :
if self.main_window != None :
if hasattr(self.main_window, "func_call_back_on_mqtt_param_modify") :
self.main_window.func_call_back_on_mqtt_param_modify(modify_str)
def key_enter_process(self):
alias_key = self.get_alias_key_str()
self.modify_alias_value(alias_key)
self.buttonBox.button(QDialogButtonBox.Ok).click()
def key_escape_process(self):
self.buttonBox.button(QDialogButtonBox.Cancel).click()
def set_alias_item_info(self, alias_item_dict, key_value, inform_message : str = "系统参数") :
combo : QComboBox = self.comboBox
self.alias_item_dict = alias_item_dict
combo.clear()
current_index = 0
select_index = -1
self.set_caption_name(inform_message)
for key, value_str in alias_item_dict.items() :
combo.addItem(value_str)
if key_value == key :
select_index = current_index
current_index += 1
if select_index >= 0 :
combo.setCurrentIndex(select_index)
else :
combo.setCurrentText(key_value)
def dialog_button_ok_clicked(self, button):
if button == self.buttonBox.button(QDialogButtonBox.Ok) :
alias_key = self.get_alias_key_str()
self.modify_alias_value(alias_key)
if __name__ == '__main__':
app = QApplication(sys.argv)
alias_select = {0 : "380V", 1 : "660V", 2: "1140V", 3 : "3300V"}
json_msg : str = json.dumps(alias_select, ensure_ascii=False)
print_inform_msg(json_msg)
alias_2 = {"alias_voltage" : {0 : "380V", 1 : "660V", 2: "1140V", 3 : "3300V"}}
json_msg2 : str = json.dumps(alias_2, ensure_ascii=False)
print_inform_msg(json_msg2)
dialog = DialogModifyAlias(None)
dialog.set_alias_item_info(alias_select, 1)
dialog.show()
result = dialog.exec_()
if dialog.result() == QDialog.Accepted:
print_inform_msg(dialog.get_alias_key_str()) # 输出: Button clicked
sys.exit(0)

View File

@ -0,0 +1,140 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>DialogModifyAlias</class>
<widget class="QDialog" name="DialogModifyAlias">
<property name="windowModality">
<enum>Qt::ApplicationModal</enum>
</property>
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>587</width>
<height>231</height>
</rect>
</property>
<property name="contextMenuPolicy">
<enum>Qt::DefaultContextMenu</enum>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="geometry">
<rect>
<x>190</x>
<y>180</y>
<width>341</width>
<height>32</height>
</rect>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
<widget class="QComboBox" name="comboBox">
<property name="geometry">
<rect>
<x>262</x>
<y>100</y>
<width>221</width>
<height>31</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(255, 170, 0);
background: transparent</string>
</property>
</widget>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>120</x>
<y>90</y>
<width>141</width>
<height>51</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(0, 170, 0);</string>
</property>
<property name="text">
<string>别名参数</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
<widget class="QLabel" name="BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>587</width>
<height>231</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>BG09_004.png</pixmap>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
<zorder>buttonBox</zorder>
<zorder>BG</zorder>
<zorder>comboBox</zorder>
<zorder>label</zorder>
</widget>
<resources/>
<connections>
<connection>
<sender>buttonBox</sender>
<signal>accepted()</signal>
<receiver>DialogModifyAlias</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>248</x>
<y>254</y>
</hint>
<hint type="destinationlabel">
<x>157</x>
<y>274</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>DialogModifyAlias</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>316</x>
<y>260</y>
</hint>
<hint type="destinationlabel">
<x>286</x>
<y>274</y>
</hint>
</hints>
</connection>
</connections>
</ui>

View File

@ -0,0 +1,136 @@
import sys
from PyQt5.QtWidgets import QApplication, QDialog, QLineEdit, QLabel, QWidget, QPushButton, QMessageBox, QComboBox, QDialogButtonBox, QShortcut
from PyQt5 import uic
from PyQt5.QtGui import QKeySequence
from PyQt5.QtCore import Qt, QEvent, QObject, QTimer
sys_path = sys.path[0].replace("\\", "/")
ui_file_path = sys_path + "/DialogModifyText.ui"
def modify_string(string, index, new_char):
string_list = list(string)
string_list[index] = new_char
modified_string = ''.join(string_list)
return modified_string
def chr_adjust(old_chr, dif : int) :
new_chr = old_chr
if old_chr == '+':
new_chr = '-'
elif old_chr == '-':
new_chr = '+'
elif dif > 0:
new_chr = chr(ord(old_chr) + 1)
if new_chr > '9' :
new_chr = '0'
else :
new_chr = chr(ord(old_chr) - 1)
if new_chr < '0' :
new_chr = '9'
return new_chr
class DialogModifyText(QDialog):
def __init__(self, main_window, parent=None):
super(DialogModifyText, self).__init__(parent)
# Load UI file
uic.loadUi(ui_file_path, self)
self.Text = "2019-09-10 10:22:23"
self.select_bit = 0
self.main_window = main_window
self.setWindowTitle("参数修改")
self.setWindowFlag(Qt.FramelessWindowHint)
self.buttonBox.button(QDialogButtonBox.Ok).setText('确定')
self.buttonBox.button(QDialogButtonBox.Cancel).setText('取消')
self.buttonBox.clicked.connect(self.dialog_button_ok_clicked)
modify_text = self.Text
self.update_modify_info(modify_text, "缺省多字符修改")
#让定时器周期刷修改字符串, 防止出现焦点切换时选中消失的情况
self.timer = QTimer(self)
self.timer.timeout.connect(self.timeout_modify_string_refresh)
self.timer.start(100)
#定义4个快捷键, Key_Enter, Key_Escape经常被各类程序模块使用, 用Key_End, 与Key_Home来代替
QShortcut(QKeySequence(Qt.Key_Up), self, activated=self.key_increase_parameter)
QShortcut(QKeySequence(Qt.Key_Down), self, activated=self.key_decrease_parameter)
QShortcut(QKeySequence(Qt.Key_PageDown), self, activated=self.key_enter_process)
QShortcut(QKeySequence(Qt.Key_PageUp), self, activated=self.key_escape_process)
QShortcut(QKeySequence(Qt.Key_End), self, activated=self.key_enter_process)
QShortcut(QKeySequence(Qt.Key_Home), self, activated=self.key_escape_process)
@property
def value(self):
return self.Text
def timeout_modify_string_refresh(self) :
line_modify : QLineEdit = self.lineEdit
modify_str : str = line_modify.text()
self.update_modify_string(modify_str)
def update_modify_info(self, modify_str, caption : str) :
if hasattr(self, "label") :
label : QLabel = self.label
label.setText(caption)
self.update_modify_string(modify_str)
def update_modify_string(self, modify_str : str) :
line_modify : QLineEdit = self.lineEdit
line_modify.setText(modify_str)
if self.select_bit < len(modify_str) :
if modify_str[self.select_bit] == ' ':
self.key_enter_process()
# 设置选择从第self.select_bit个字符开始长度为1
line_modify.setSelection(self.select_bit, 1)
def key_increase_parameter(self):
line_modify : QLineEdit = self.lineEdit
text : str = line_modify.text()
if self.select_bit < len(text) :
old_chr = text[self.select_bit]
new_chr = chr_adjust(old_chr, 1)
new_modify_text = modify_string(text, self.select_bit, new_chr)
self.update_modify_string(new_modify_text)
def key_decrease_parameter(self):
line_modify : QLineEdit = self.lineEdit
text : str = line_modify.text()
if self.select_bit < len(text) :
old_chr = text[self.select_bit]
new_chr = chr_adjust(old_chr, -1)
new_modify_text = modify_string(text, self.select_bit, new_chr)
self.update_modify_string(new_modify_text)
def key_enter_process(self):
line_modify : QLineEdit = self.lineEdit
text : str = line_modify.text()
if self.select_bit < len(text) - 1:
self.select_bit += 1
if not str.isdigit(text[self.select_bit]) :
self.key_enter_process()
else :
self.update_modify_string(text)
else :
self.buttonBox.button(QDialogButtonBox.Ok).click()
def key_escape_process(self):
self.buttonBox.button(QDialogButtonBox.Cancel).click()
def dialog_button_ok_clicked(self, button):
if button == self.buttonBox.button(QDialogButtonBox.Ok) :
line_modify : QLineEdit = self.lineEdit
self.Text = line_modify.text()
if __name__ == '__main__':
app = QApplication(sys.argv)
dialog = DialogModifyText(None)
dialog.show()
dialog.exec_()
sys.exit(0)

View File

@ -0,0 +1,168 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>DialogModifyValue</class>
<widget class="QDialog" name="DialogModifyValue">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>587</width>
<height>231</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="enabled">
<bool>true</bool>
</property>
<property name="geometry">
<rect>
<x>180</x>
<y>190</y>
<width>341</width>
<height>32</height>
</rect>
</property>
<property name="font">
<font>
<bold>false</bold>
<stylestrategy>PreferDefault</stylestrategy>
</font>
</property>
<property name="styleSheet">
<string notr="true">background: transparent</string>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit">
<property name="geometry">
<rect>
<x>227</x>
<y>95</y>
<width>292</width>
<height>41</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>16</pointsize>
<fontweight>ExtraBold</fontweight>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(255, 170, 0);
background: transparent</string>
</property>
<property name="text">
<string>2024-05-24</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="echoMode">
<enum>QLineEdit::Normal</enum>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>110</x>
<y>90</y>
<width>141</width>
<height>51</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
<bold>false</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(0, 170, 0);</string>
</property>
<property name="text">
<string>参数名称</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
<widget class="QLabel" name="BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>587</width>
<height>231</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>BG09_003.png</pixmap>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
<zorder>BG</zorder>
<zorder>buttonBox</zorder>
<zorder>label</zorder>
<zorder>lineEdit</zorder>
</widget>
<resources/>
<connections>
<connection>
<sender>buttonBox</sender>
<signal>accepted()</signal>
<receiver>DialogModifyValue</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>248</x>
<y>254</y>
</hint>
<hint type="destinationlabel">
<x>157</x>
<y>274</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>DialogModifyValue</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>316</x>
<y>260</y>
</hint>
<hint type="destinationlabel">
<x>286</x>
<y>274</y>
</hint>
</hints>
</connection>
</connections>
</ui>

View File

@ -0,0 +1,151 @@
import sys
from PyQt5.QtWidgets import QApplication, QDialog, QLineEdit, QLabel, QWidget, QPushButton, QMessageBox, QComboBox, QDialogButtonBox, QShortcut
from PyQt5 import uic
from PyQt5.QtGui import QKeySequence
from PyQt5.QtCore import Qt, QEvent, QObject, QTimer
sys_path = sys.path[0].replace("\\", "/")
ui_file_path = sys_path + "/DialogModifyValue.ui"
def modify_string(string, index, new_char):
string_list = list(string)
string_list[index] = new_char
modified_string = ''.join(string_list)
return modified_string
def chr_adjust(old_chr, dif : int) :
new_chr = old_chr
if old_chr == '+':
new_chr = '-'
elif old_chr == '-':
new_chr = '+'
elif dif > 0:
new_chr = chr(ord(old_chr) + 1)
if new_chr > '9' :
new_chr = '0'
else :
new_chr = chr(ord(old_chr) - 1)
if new_chr < '0' :
new_chr = '9'
return new_chr
class DialogModifyValue(QDialog):
def __init__(self, main_window, parent=None):
super(DialogModifyValue, self).__init__(parent)
# Load UI file
uic.loadUi(ui_file_path, self)
self.value_origin = 1000.3
self.value_modify = 1000.3
self.format = "%05.1f"
self.scale = 1.0
self.offset = 0.0
self.select_bit = 0
self.main_window = main_window
self.setWindowTitle("参数修改")
self.setWindowFlag(Qt.FramelessWindowHint)
self.buttonBox.button(QDialogButtonBox.Ok).setText('确定')
self.buttonBox.button(QDialogButtonBox.Cancel).setText('取消')
self.buttonBox.clicked.connect(self.dialog_button_ok_clicked)
modify_value = self.value_origin * self.scale + self.offset
self.update_modify_info(self.format, modify_value, "缺省参数修改", self.offset)
#让定时器周期刷修改字符串, 防止出现焦点切换时选中消失的情况
self.timer = QTimer(self)
self.timer.timeout.connect(self.timeout_modify_string_refresh)
self.timer.start(100)
#定义4个快捷键, Key_Enter, Key_Escape经常被各类程序模块使用, 用Key_End, 与Key_Home来代替
QShortcut(QKeySequence(Qt.Key_Up), self, activated=self.key_increase_parameter)
QShortcut(QKeySequence(Qt.Key_Down), self, activated=self.key_decrease_parameter)
QShortcut(QKeySequence(Qt.Key_PageDown), self, activated=self.key_enter_process)
QShortcut(QKeySequence(Qt.Key_PageUp), self, activated=self.key_escape_process)
QShortcut(QKeySequence(Qt.Key_End), self, activated=self.key_enter_process)
QShortcut(QKeySequence(Qt.Key_Home), self, activated=self.key_escape_process)
@property
def value(self):
line_modify : QLineEdit = self.lineEdit
text : str = line_modify.text()
return text
def timeout_modify_string_refresh(self) :
line_modify : QLineEdit = self.lineEdit
modify_str : str = line_modify.text()
self.update_modify_string(modify_str)
def update_modify_info(self, format_str, value, caption : str, offset = 0) :
self.value_origin = value
self.format = format_str
self.offset = offset
if hasattr(self, "label") :
label : QLabel = self.label
label.setText(caption)
if self.format != "" :
modify_str = self.format%(value)
else :
modify_str = str(value)
self.update_modify_string(modify_str)
def update_modify_string(self, modify_str : str) :
line_modify : QLineEdit = self.lineEdit
line_modify.setText(modify_str)
if self.select_bit < len(modify_str) :
if modify_str[self.select_bit] == ' ':
self.key_enter_process()
# 设置选择从第self.select_bit个字符开始长度为1
line_modify.setSelection(self.select_bit, 1)
def key_increase_parameter(self):
line_modify : QLineEdit = self.lineEdit
text : str = line_modify.text()
if self.select_bit < len(text) :
old_chr = text[self.select_bit]
new_chr = chr_adjust(old_chr, 1)
new_modify_text = modify_string(text, self.select_bit, new_chr)
self.update_modify_string(new_modify_text)
def key_decrease_parameter(self):
line_modify : QLineEdit = self.lineEdit
text : str = line_modify.text()
if self.select_bit < len(text) :
old_chr = text[self.select_bit]
new_chr = chr_adjust(old_chr, -1)
new_modify_text = modify_string(text, self.select_bit, new_chr)
self.update_modify_string(new_modify_text)
def key_enter_process(self):
line_modify : QLineEdit = self.lineEdit
text : str = line_modify.text()
if self.select_bit < len(text) - 1:
self.select_bit += 1
if not str.isdigit(text[self.select_bit]) :
self.key_enter_process()
else :
self.update_modify_string(text)
else :
self.buttonBox.button(QDialogButtonBox.Ok).click()
def key_escape_process(self):
self.buttonBox.button(QDialogButtonBox.Cancel).click()
def dialog_button_ok_clicked(self, button):
if button == self.buttonBox.button(QDialogButtonBox.Ok) :
line_modify : QLineEdit = self.lineEdit
text : str = line_modify.text()
self.value_modify = float(text)
if __name__ == '__main__':
app = QApplication(sys.argv)
dialog = DialogModifyValue()
dialog.show()
sys.exit(dialog.exec_())

View File

@ -0,0 +1,157 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>DialogModifyValue</class>
<widget class="QDialog" name="DialogModifyValue">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>587</width>
<height>231</height>
</rect>
</property>
<property name="windowTitle">
<string>Dialog</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;
background-color: rgba(0, 0, 0, 0);</string>
</property>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="geometry">
<rect>
<x>190</x>
<y>180</y>
<width>341</width>
<height>32</height>
</rect>
</property>
<property name="contextMenuPolicy">
<enum>Qt::CustomContextMenu</enum>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit">
<property name="geometry">
<rect>
<x>260</x>
<y>96</y>
<width>191</width>
<height>41</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(255, 170, 0);</string>
</property>
<property name="text">
<string>000.0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>120</x>
<y>90</y>
<width>141</width>
<height>51</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(0, 170, 0);</string>
</property>
<property name="text">
<string>参数名称</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
<widget class="QLabel" name="BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>587</width>
<height>231</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>BG09_004.png</pixmap>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
<zorder>BG</zorder>
<zorder>buttonBox</zorder>
<zorder>lineEdit</zorder>
<zorder>label</zorder>
</widget>
<resources/>
<connections>
<connection>
<sender>buttonBox</sender>
<signal>accepted()</signal>
<receiver>DialogModifyValue</receiver>
<slot>accept()</slot>
<hints>
<hint type="sourcelabel">
<x>248</x>
<y>254</y>
</hint>
<hint type="destinationlabel">
<x>157</x>
<y>274</y>
</hint>
</hints>
</connection>
<connection>
<sender>buttonBox</sender>
<signal>rejected()</signal>
<receiver>DialogModifyValue</receiver>
<slot>reject()</slot>
<hints>
<hint type="sourcelabel">
<x>316</x>
<y>260</y>
</hint>
<hint type="destinationlabel">
<x>286</x>
<y>274</y>
</hint>
</hints>
</connection>
</connections>
</ui>

View File

@ -0,0 +1,7 @@
import sys
import cv2
sys_path = sys.path[0].replace("\\", "/")
def process_face_detection(image : cv2.typing.MatLike, fps : int = 10) :
pass

View File

@ -0,0 +1,61 @@
import sys
import cv2
import numpy as np
sys_path = sys.path[0].replace("\\", "/")
# 加载人脸检测模型
tensorflowWeightFile = sys_path + "/opencv_face_detector.pbtxt"
tensorflowModelFile = sys_path + "/opencv_face_detector_uint8.pb"
conf_threshold = 0.7
net = cv2.dnn.readNetFromTensorflow(tensorflowModelFile, tensorflowWeightFile)
def process_face_detection(image : cv2.typing.MatLike, fps : int = 10) :
# 读取图片
#image = cv2.imread(sys_path + "/example.jpg")
height, width, _ = image.shape
# # 准备输入数据
# blob = cv2.dnn.blobFromImage(cv2.resize(image, (300, 300)), 1.0,
# (300, 300), (104.0, 177.0, 123.0))
# 设置参数
scalefactor = 1.0
size = (300, 300)
mean = (104.0, 177.0, 123.0)
swapRB = False
crop = False
ddepth = cv2.CV_32F
# 将图像转换为blob
blob = cv2.dnn.blobFromImage(cv2.resize(image, (320, 240)), scalefactor, size, mean, swapRB, crop, ddepth)
net.setInput(blob)
# 运行网络
detections = net.forward()
text = "fps : %d"%(fps)
cv2.putText(image, text, org = (50, 50), fontFace = cv2.FONT_HERSHEY_SIMPLEX, fontScale = 1, color = (0, 255, 0), thickness = 1)
# 解析检测结果
for i in range(detections.shape[2]):
confidence = detections[0, 0, i, 2]
if confidence > 0.5:
box = detections[0, 0, i, 3:7] * np.array([width, height, width, height])
(startX, startY, endX, endY) = box.astype("int")
# 画出检测到的人脸
cv2.rectangle(image, (startX, startY), (endX, endY), (0, 255, 0), 2)
if __name__ == "__main__":
# 显示图片
image = cv2.imread(sys_path + "/example.jpg")
process_face_detection(image)
cv2.imshow("Face Detection", image)
cv2.waitKey(0)
cv2.destroyAllWindows()

View File

@ -0,0 +1,62 @@
import sys
import cv2
import numpy as np
import mediapipe as mp
sys_path = sys.path[0].replace("\\", "/")
image = cv2.imread(sys_path + "/example.jpg")
# 初始化BlazeFace模型
mp_face_detection = mp.solutions.face_detection
face_detection = mp_face_detection.FaceDetection(min_detection_confidence=0.5, model_selection=2)
def process_face_detection(image : cv2.typing.MatLike, fps : int = 10) :
image_width = image.shape[1]
image_height = image.shape[0]
# 检测人脸
results = face_detection.process(image)
total_score = 0
if results.detections:
for face in results.detections:
relative_box = face.location_data.relative_bounding_box
# print(f'Detection score: {detection.score}')
# print(f'Box location: {relative_box}')
if face.score[0] < 0.55 :
continue
total_score += face.score[0]
# 在图片上绘制方框
xmin = relative_box.xmin
ymin = relative_box.ymin
ymax = relative_box.height + ymin
xmax = relative_box.width + xmin
# ymin, xmin, ymax, xmax = detection.location_data.relative_bounding_box
cv2.rectangle(image, (int(xmin * image_width), int(ymin * image_height)),
(int(xmax * image_width), int(ymax * image_height)), (0, 255, 0), 2)
key_points = np.array([(p.x, p.y) for p in face.location_data.relative_keypoints])
key_points_coords = np.multiply(key_points,[image_width,image_height]).astype(int)
for p in key_points_coords:
cv2.circle(image, p, 4, (255, 255, 255), 2)
cv2.circle(image, p, 2, (0, 0, 0), -1)
average_score = total_score / len(results.detections)
text = "fps : %d, score = %f"%(fps, average_score)
else :
text = "fps :%d"%(fps)
cv2.putText(image, text, org = (50, 50), fontFace = cv2.FONT_HERSHEY_SIMPLEX, fontScale = 1, color = (255, 255, 0), thickness = 1)
if __name__ == "__main__":
# 显示图片
image = cv2.imread(sys_path + "/example.jpg")
process_face_detection(image)
cv2.imshow("Face Detection", image)
cv2.waitKey(0)
cv2.destroyAllWindows()

View File

@ -0,0 +1,23 @@
from flask import Flask, render_template
from flask_socketio import SocketIO
from threading import Timer
from random import randint
app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)
def generate_data():
data = randint(0, 100) # 示例数据,实际中可以是实时生成的数据
socketio.emit('update', data)
Timer(1, generate_data).start() # 每1秒生成一次数据
@app.route('/')
def index():
return render_template('index.html')
if __name__ == '__main__':
generate_data()
socketio.run(app, debug=True)

View File

@ -0,0 +1,22 @@
from http.server import BaseHTTPRequestHandler
from http.server import HTTPServer
from flask import Flask, render_template, jsonify
import random
app = Flask(__name__)
# 假设的数据源,这里用随机数模拟实时更新的数据
data_source = [random.randint(0, 100) for _ in range(10)]
@app.route('/')
def index():
return render_template('index.html')
@app.route('/data')
def data():
# 返回最新数据
return jsonify(data_source)
if __name__ == '__main__':
app.run(debug=True)

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 593 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 661 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 650 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 422 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 581 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 540 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

View File

@ -0,0 +1,90 @@
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton, QDialog
from PyQt5.QtCore import Qt, QRect
class KetWidget(QWidget) :
def __init__(self, parent) :
super().__init__()
self.initUI()
self.parent = parent
def initUI(self) :
btn_box = QVBoxLayout()
self.float_button1 = QPushButton("", self)
self.float_button1.move(self.width() - 200, self.height() - 200)
self.float_button1.setFixedSize(90, 90)
self.float_button1.clicked.connect(self.focus_do_inscrease)
self.float_button2 = QPushButton("", self)
self.float_button2.move(self.width() - 200, self.height() - 100)
self.float_button2.setFixedSize(90, 90)
self.float_button2.clicked.connect(self.focus_do_decrease)
self.float_button3 = QPushButton("enter", self)
self.float_button3.move(self.width() - 100, self.height() - 200)
self.float_button3.setFixedSize(90, 90)
self.float_button3.clicked.connect(self.focus_do_action)
self.float_button4 = QPushButton("esc", self)
self.float_button4.move(self.width() - 100, self.height() - 100)
self.float_button4.setFixedSize(90, 90)
self.float_button4.clicked.connect(self.focus_do_escape)
self.show_hide_button = QPushButton("show/hide", self)
self.show_hide_button.move(self.width()-10, self.height() - 100)
self.show_hide_button.setFixedSize(90, 90)
self.show_hide_button.clicked.connect(self.focus_show_hide)
btn_box.addWidget(self.float_button1)
btn_box.addWidget(self.float_button2)
btn_box.addWidget(self.float_button3)
btn_box.addWidget(self.float_button4)
def focus_do_inscrease(self) :
if hasattr(self.parent, 'stack'):
self.parent.stack.currentWidget().key_decrease_parameter()
else :
self.parent.key_increase_parameter()
def focus_do_decrease(self) :
if hasattr(self.parent, 'stack'):
self.parent.stack.currentWidget().key_increase_parameter()
else :
self.parent.key_decrease_parameter()
def focus_do_action(self) :
if hasattr(self.parent, 'stack'):
self.parent.stack.currentWidget().key_enter_process()
else :
self.parent.key_enter_process()
def focus_do_escape(self) :
if hasattr(self.parent, 'stack'):
self.parent.stack.currentWidget().key_escape_process()
else :
self.parent.key_escape_process()
def focus_show_hide(self) :
if self.float_button1.isHidden() :
self.float_button1.show()
self.float_button2.show()
self.float_button3.show()
self.float_button4.show()
else :
self.float_button1.hide()
self.float_button2.hide()
self.float_button3.hide()
self.float_button4.hide()
def showEvent(self, event):
super().showEvent(event)
# 获取屏幕大小
screen = QApplication.primaryScreen()
screen_rect = screen.geometry()
# 计算窗口在屏幕右下角的位置
width, height = self.width(), self.height()
x = screen_rect.width() - width
y = screen_rect.height() - height
# 设置窗口位置
self.move(x, y)

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 234 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,339 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P01DeviceMenu</class>
<widget class="QMainWindow" name="P01DeviceMenu">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=1</string>
</property>
<property name="whatsThis">
<string/>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QLabel" name="P01BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>image/DeviceMenu.png</pixmap>
</property>
</widget>
<widget class="QGroupBox" name="Btns">
<property name="geometry">
<rect>
<x>234</x>
<y>179</y>
<width>771</width>
<height>701</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="Btn07">
<property name="geometry">
<rect>
<x>400</x>
<y>229</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=7, Action=SetPage0,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>返回主页</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn01">
<property name="geometry">
<rect>
<x>18</x>
<y>114</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=1,Action=SetPage2+SetBinding,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>运行数据</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn02">
<property name="geometry">
<rect>
<x>18</x>
<y>229</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=2, Action=SetPage3+SetBinding,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>开关操作</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn03">
<property name="geometry">
<rect>
<x>18</x>
<y>345</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=3, Action=SetPage4+SetBinding,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string> 保护参数设置</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn04">
<property name="geometry">
<rect>
<x>20</x>
<y>460</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=4, Action=SetPage7+SetBinding,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string> 系统参数设置</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="BindNum_Title">
<property name="geometry">
<rect>
<x>90</x>
<y>10</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>设备</string>
</property>
</widget>
<widget class="QPushButton" name="Btn05">
<property name="geometry">
<rect>
<x>18</x>
<y>575</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=5, Action=SetPage6+SetBinding+CmdAlarmNext,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>故障查询</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn06">
<property name="geometry">
<rect>
<x>400</x>
<y>114</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=6, Action=SetPage8+SetBinding ,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>现场试验</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
</widget>
</widget>
<resources/>
<connections/>
</ui>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,468 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P03SwitchAction</class>
<widget class="QMainWindow" name="P03SwitchAction">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=3</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QLabel" name="P03BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>image/SwitchAction.png</pixmap>
</property>
</widget>
<widget class="QLineEdit" name="BindNum_Title">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>295</x>
<y>190</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>当前设备</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys_2">
<property name="geometry">
<rect>
<x>374</x>
<y>189</y>
<width>1141</width>
<height>811</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="SwitchOn">
<property name="geometry">
<rect>
<x>47</x>
<y>458</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>SwitchOn,Index=2,Action=CmdExecute, SelectImag=SR_001.png, groupstart=6</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="SwitchOff">
<property name="geometry">
<rect>
<x>47</x>
<y>557</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>SwitchOff,Index=3,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="CarBackward">
<property name="geometry">
<rect>
<x>473</x>
<y>559</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>CarRetreat,Index=6,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="CarForward">
<property name="geometry">
<rect>
<x>473</x>
<y>460</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>CarForward,Index=5,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QLabel" name="m01_SwitchStatus_0">
<property name="geometry">
<rect>
<x>70</x>
<y>140</y>
<width>310</width>
<height>170</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>SwitchStatus, ImageValue=IM03_SwitchStatus_%d.png, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QPushButton" name="SwitchRecover">
<property name="geometry">
<rect>
<x>47</x>
<y>657</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>SwitchOff,Index=4,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="m03_AlarmMessage_0">
<property name="geometry">
<rect>
<x>150</x>
<y>90</y>
<width>281</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="statusTip">
<string>AlarmMessage,Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QLabel" name="TestCameraView">
<property name="geometry">
<rect>
<x>650</x>
<y>125</y>
<width>441</width>
<height>241</height>
</rect>
</property>
<property name="statusTip">
<string>canvas1=camera0, Timeout=3000</string>
</property>
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QPushButton" name="quit">
<property name="geometry">
<rect>
<x>842</x>
<y>461</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>Index=7, Action=SetPage1,SelectImag=SR_001.png, groupend=6</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="m03_CarMessage_14">
<property name="geometry">
<rect>
<x>690</x>
<y>81</y>
<width>291</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="statusTip">
<string>CarPositionMsg,Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 255, 255,0);
color: rgb(255, 170, 0);</string>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLabel" name="SwitchType">
<property name="geometry">
<rect>
<x>144</x>
<y>310</y>
<width>173</width>
<height>69</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>SwitchType, ImageValue=SwitchType_%d.png, Timeout=10000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(30, 14, 255);</string>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys">
<property name="geometry">
<rect>
<x>0</x>
<y>100</y>
<width>85</width>
<height>960</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="sys_menu">
<property name="geometry">
<rect>
<x>8</x>
<y>151</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=SetPage1,SelectImag=IMxx_00E.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_home">
<property name="geometry">
<rect>
<x>8</x>
<y>5</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=0, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
</widget>
</widget>
<resources/>
<connections/>
</ui>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,656 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P05CameraView</class>
<widget class="QMainWindow" name="P05CameraView">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=5</string>
</property>
<property name="whatsThis">
<string/>
</property>
<widget class="QWidget" name="centralwidget">
<property name="statusTip">
<string/>
</property>
<widget class="QLabel" name="P05BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>image/CameraView.png</pixmap>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys">
<property name="geometry">
<rect>
<x>0</x>
<y>100</y>
<width>85</width>
<height>960</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="Btn_Home">
<property name="geometry">
<rect>
<x>8</x>
<y>2</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=9, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
<widget class="QLabel" name="Canvas00">
<property name="geometry">
<rect>
<x>380</x>
<y>124</y>
<width>1165</width>
<height>720</height>
</rect>
</property>
<property name="statusTip">
<string>canvas0=camera0, timeout=5000</string>
</property>
<property name="text">
<string>TextLabel</string>
</property>
</widget>
<widget class="QLabel" name="CameraChioceLabel">
<property name="geometry">
<rect>
<x>200</x>
<y>120</y>
<width>111</width>
<height>41</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>-1</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252); font-size: 35px;</string>
</property>
<property name="text">
<string>回路1</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys_2">
<property name="geometry">
<rect>
<x>90</x>
<y>890</y>
<width>1821</width>
<height>171</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="Btn02">
<property name="geometry">
<rect>
<x>236</x>
<y>5</y>
<width>220</width>
<height>159</height>
</rect>
</property>
<property name="statusTip">
<string>Index=2, Action=canvas0_camera1, SelectImag=IM05_A2.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn01">
<property name="geometry">
<rect>
<x>10</x>
<y>5</y>
<width>220</width>
<height>159</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=canvas0_camera0, SelectImag=IM05_A1.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn03">
<property name="geometry">
<rect>
<x>462</x>
<y>5</y>
<width>220</width>
<height>159</height>
</rect>
</property>
<property name="statusTip">
<string>Index=3, Action=canvas0_camera2, SelectImag=IM05_A3.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn04">
<property name="geometry">
<rect>
<x>688</x>
<y>5</y>
<width>220</width>
<height>159</height>
</rect>
</property>
<property name="statusTip">
<string>Index=4, Action=canvas0_camera3, SelectImag=IM05_A4.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn05">
<property name="geometry">
<rect>
<x>914</x>
<y>5</y>
<width>220</width>
<height>159</height>
</rect>
</property>
<property name="statusTip">
<string>Index=5, Action=canvas0_camera4, SelectImag=IM05_A5.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn06">
<property name="geometry">
<rect>
<x>1140</x>
<y>5</y>
<width>220</width>
<height>159</height>
</rect>
</property>
<property name="statusTip">
<string>Index=6, Action=canvas0_camera5, SelectImag=IM05_A6.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn07">
<property name="geometry">
<rect>
<x>1366</x>
<y>5</y>
<width>220</width>
<height>159</height>
</rect>
</property>
<property name="statusTip">
<string>Index=7, Action=canvas0_camera6, SelectImag=IM05_A7.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn08">
<property name="geometry">
<rect>
<x>1592</x>
<y>5</y>
<width>220</width>
<height>159</height>
</rect>
</property>
<property name="statusTip">
<string>Index=8, Action=canvas0_camera7, SelectImag=IM05_A8.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QLabel" name="Canvas01">
<property name="geometry">
<rect>
<x>12</x>
<y>23</y>
<width>216</width>
<height>139</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>135</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>400</width>
<height>300</height>
</size>
</property>
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="statusTip">
<string>canvas1=camera0, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="text">
<string/>
</property>
<property name="textFormat">
<enum>Qt::AutoText</enum>
</property>
<property name="pixmap">
<pixmap>IM05_002.png</pixmap>
</property>
<property name="scaledContents">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QLabel" name="Canvas02">
<property name="geometry">
<rect>
<x>238</x>
<y>23</y>
<width>216</width>
<height>139</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>135</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>400</width>
<height>300</height>
</size>
</property>
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="statusTip">
<string>canvas2=camera1, Timeout=5000</string>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>IM05_002.png</pixmap>
</property>
</widget>
<widget class="QLabel" name="Canvas03">
<property name="geometry">
<rect>
<x>464</x>
<y>23</y>
<width>216</width>
<height>139</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>135</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>400</width>
<height>300</height>
</size>
</property>
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="statusTip">
<string>canvas3=camera2, Timeout=5000</string>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>IM05_002.png</pixmap>
</property>
</widget>
<widget class="QLabel" name="Canvas04">
<property name="geometry">
<rect>
<x>690</x>
<y>23</y>
<width>216</width>
<height>139</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>135</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>400</width>
<height>300</height>
</size>
</property>
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="statusTip">
<string>canvas4=camera3, Timeout=5000</string>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>IM05_002.png</pixmap>
</property>
</widget>
<widget class="QLabel" name="Canvas05">
<property name="geometry">
<rect>
<x>916</x>
<y>23</y>
<width>216</width>
<height>139</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>135</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>400</width>
<height>300</height>
</size>
</property>
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="statusTip">
<string>canvas5=camera4, Timeout=5000</string>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>IM05_002.png</pixmap>
</property>
</widget>
<widget class="QLabel" name="Canvas06">
<property name="geometry">
<rect>
<x>1142</x>
<y>23</y>
<width>216</width>
<height>139</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>135</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>400</width>
<height>300</height>
</size>
</property>
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="statusTip">
<string>canvas6=camera5, Timeout=5000</string>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>IM05_002.png</pixmap>
</property>
</widget>
<widget class="QLabel" name="Canvas07">
<property name="geometry">
<rect>
<x>1368</x>
<y>23</y>
<width>216</width>
<height>139</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>135</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>400</width>
<height>300</height>
</size>
</property>
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="statusTip">
<string>canvas7=camera6, Timeout=5000</string>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>IM05_002.png</pixmap>
</property>
</widget>
<widget class="QLabel" name="Canvas08">
<property name="geometry">
<rect>
<x>1594</x>
<y>23</y>
<width>216</width>
<height>139</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>135</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>400</width>
<height>300</height>
</size>
</property>
<property name="focusPolicy">
<enum>Qt::StrongFocus</enum>
</property>
<property name="statusTip">
<string>canvas8=camera7, Timeout=5000</string>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>IM05_002.png</pixmap>
</property>
</widget>
<zorder>Canvas08</zorder>
<zorder>Canvas07</zorder>
<zorder>Canvas06</zorder>
<zorder>Canvas05</zorder>
<zorder>Canvas04</zorder>
<zorder>Canvas03</zorder>
<zorder>Canvas02</zorder>
<zorder>Canvas01</zorder>
<zorder>Btn02</zorder>
<zorder>Btn01</zorder>
<zorder>Btn03</zorder>
<zorder>Btn04</zorder>
<zorder>Btn05</zorder>
<zorder>Btn06</zorder>
<zorder>Btn07</zorder>
<zorder>Btn08</zorder>
</widget>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,708 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P06FaultQuery</class>
<widget class="QMainWindow" name="P06FaultQuery">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1076</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=6</string>
</property>
<property name="whatsThis">
<string/>
</property>
<widget class="QWidget" name="centralwidget">
<property name="statusTip">
<string/>
</property>
<widget class="QLabel" name="P06BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>image/FaultQuery.png</pixmap>
</property>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys_2">
<property name="geometry">
<rect>
<x>640</x>
<y>310</y>
<width>641</width>
<height>581</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=2</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="Btn_Pre">
<property name="geometry">
<rect>
<x>48</x>
<y>412</y>
<width>85</width>
<height>169</height>
</rect>
</property>
<property name="statusTip">
<string>Index=2,Action=CmdAlarmPrev, SelectImag=IM03_001.png, groupstart=3</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn_Next">
<property name="geometry">
<rect>
<x>267</x>
<y>412</y>
<width>85</width>
<height>169</height>
</rect>
</property>
<property name="statusTip">
<string>Index=3,Action=CmdAlarmNext, SelectImag=IM03_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="alarmTitle">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>120</x>
<y>75</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(160, 206, 226);</string>
</property>
<property name="text">
<string>..</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="alarmTime">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>120</x>
<y>35</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(160, 206, 226);</string>
</property>
<property name="text">
<string>...</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="alarmMsg">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>120</x>
<y>118</y>
<width>491</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(255, 126, 21);</string>
</property>
<property name="text">
<string>...</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QPushButton" name="sys_menu_2">
<property name="geometry">
<rect>
<x>485</x>
<y>412</y>
<width>85</width>
<height>169</height>
</rect>
</property>
<property name="statusTip">
<string>Index=4, Action=SetPage1, SelectImag=IM03_001.png, groupend=3</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox">
<property name="geometry">
<rect>
<x>650</x>
<y>485</y>
<width>671</width>
<height>291</height>
</rect>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">border:none;
background-color: rgba(255, 255, 255,0);</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QLineEdit" name="lineEdit_15">
<property name="geometry">
<rect>
<x>260</x>
<y>27</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmUb, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_13">
<property name="geometry">
<rect>
<x>40</x>
<y>27</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmUa, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_14">
<property name="geometry">
<rect>
<x>40</x>
<y>82</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmIa, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_16">
<property name="geometry">
<rect>
<x>40</x>
<y>137</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmIc, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_18">
<property name="geometry">
<rect>
<x>260</x>
<y>82</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmIb, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_19">
<property name="geometry">
<rect>
<x>260</x>
<y>137</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmIo, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_21">
<property name="geometry">
<rect>
<x>480</x>
<y>27</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmUc, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_22">
<property name="geometry">
<rect>
<x>480</x>
<y>81</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmIc, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_23">
<property name="geometry">
<rect>
<x>480</x>
<y>137</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmRo, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_sys">
<property name="geometry">
<rect>
<x>0</x>
<y>100</y>
<width>85</width>
<height>960</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="sys_menu">
<property name="geometry">
<rect>
<x>8</x>
<y>152</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=SetPage1,SelectImag=IMxx_00E.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_home">
<property name="geometry">
<rect>
<x>8</x>
<y>1</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=0, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_2">
<property name="geometry">
<rect>
<x>330</x>
<y>160</y>
<width>361</width>
<height>91</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">border:none;
background-color: rgba(255, 255, 255,0);</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QLineEdit" name="BindNum_Title">
<property name="geometry">
<rect>
<x>10</x>
<y>30</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>当前设备</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
</widget>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,932 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P07SystemSet</class>
<widget class="QMainWindow" name="P07SystemSet">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=7</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QGroupBox" name="groupBox">
<property name="geometry">
<rect>
<x>91</x>
<y>187</y>
<width>450</width>
<height>874</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=14</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QLineEdit" name="lineEdit_28">
<property name="geometry">
<rect>
<x>270</x>
<y>84</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>SwitchType, Action=Modify, Index=1, Alias=alias_switch_type, Caption=开关类型,Timeout=5000,SelectImag=P4_ParaSelect.png,groupstart=14</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_29">
<property name="geometry">
<rect>
<x>270</x>
<y>144</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Gas, Action=Modify, Index=2, Alias=alias_input, Caption=瓦斯触点,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_30">
<property name="geometry">
<rect>
<x>270</x>
<y>198</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>GasDelay, Action=Modify, Index=3, Format=%06.2f, Caption=瓦斯延时, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_31">
<property name="geometry">
<rect>
<x>270</x>
<y>253</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>GasConcentration, Action=Modify, Index=4, Format=%05.2f, Caption=瓦斯浓度, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_32">
<property name="geometry">
<rect>
<x>270</x>
<y>308</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Fan, Action=Modify, Index=5, Alias=alias_input, Caption=风电触点,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_36">
<property name="geometry">
<rect>
<x>270</x>
<y>364</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>FanDelay, Action=Modify, Index=6, Format=%06.2f, Caption=风电延时, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_37">
<property name="geometry">
<rect>
<x>270</x>
<y>418</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>FarAndNearMode, Action=Modify, Index=7, Alias=alias_remote, Caption=远近控模式,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_38">
<property name="geometry">
<rect>
<x>270</x>
<y>475</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>MaintenanceMode, Action=Modify, Index=8, Alias=alias_bool, Caption=维修模式,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_39">
<property name="geometry">
<rect>
<x>270</x>
<y>530</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>CarAlarmDelay, Action=Modify, Index=9, Format=%05.1f, Caption=小车报警延时, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_40">
<property name="geometry">
<rect>
<x>270</x>
<y>583</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>OffVoltageDelay, Action=Modify, Index=10, Format=%06.1f, Caption=断电延时, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_41">
<property name="geometry">
<rect>
<x>270</x>
<y>640</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>TubeDelay, Action=Modify, Index=11, Format=%06.2f, Caption=真空管粘连延时, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="BlankTimelineEdit">
<property name="geometry">
<rect>
<x>270</x>
<y>750</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>System=ScreenBlankingTime, Action=ModifySystem, Index=13,SelectImag=P4_ParaSelect.png, password</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_44">
<property name="geometry">
<rect>
<x>270</x>
<y>805</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>System=SystemPassWord, Action=ModifySystem, Index=14,SelectImag=P4_ParaSelect.png, password,groupend=14</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>****</string>
</property>
<property name="echoMode">
<enum>QLineEdit::Password</enum>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_42">
<property name="geometry">
<rect>
<x>270</x>
<y>695</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>LoadSelect, Action=Modify, Index=12, Alias=alias_select, Caption=负载选择,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_2">
<property name="geometry">
<rect>
<x>545</x>
<y>186</y>
<width>450</width>
<height>874</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=15</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QLineEdit" name="lineEdit_26">
<property name="geometry">
<rect>
<x>270</x>
<y>85</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>485Address, Action=Modify, Index=1, Format=%03.0f, Caption=485地址, Timeout=5000,SelectImag=P4_ParaSelect.png, groupstart=5</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_27">
<property name="geometry">
<rect>
<x>270</x>
<y>145</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>485Baud, Action=Modify, Index=2, Alias=alias_baud, Caption=485波特率,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_33">
<property name="geometry">
<rect>
<x>270</x>
<y>200</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>485Parity, Action=Modify, Index=3, Alias=alias_parity, Caption=485校验,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_34">
<property name="geometry">
<rect>
<x>270</x>
<y>255</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>CANAddress, Action=Modify, Index=4, Format=%03.0f, Caption=CAN地址, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_35">
<property name="geometry">
<rect>
<x>270</x>
<y>310</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>CANBaud, Action=Modify, Index=5, Alias=alias_can_baud, Caption=CAN波特率,Timeout=5000,SelectImag=P4_ParaSelect.png, groupend=5</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_sys_2">
<property name="geometry">
<rect>
<x>0</x>
<y>80</y>
<width>1920</width>
<height>970</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="sys_P00_3">
<property name="geometry">
<rect>
<x>547</x>
<y>90</y>
<width>450</width>
<height>877</height>
</rect>
</property>
<property name="statusTip">
<string>groupend=2,Index=3, Action=SetMain15,SelectImag=IM04_00.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="BindNum_Title">
<property name="geometry">
<rect>
<x>180</x>
<y>36</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>当前设备</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QPushButton" name="sys_P00_2">
<property name="geometry">
<rect>
<x>92</x>
<y>90</y>
<width>450</width>
<height>877</height>
</rect>
</property>
<property name="statusTip">
<string>groupstart=2,Index=2, Action=SetMain14,SelectImag=IM04_00.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_home">
<property name="geometry">
<rect>
<x>9</x>
<y>25</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=0, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_menu">
<property name="geometry">
<rect>
<x>9</x>
<y>173</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=SetPage1,SelectImag=IMxx_00E.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<zorder>sys_P00_2</zorder>
<zorder>sys_P00_3</zorder>
<zorder>BindNum_Title</zorder>
<zorder>sys_home</zorder>
<zorder>sys_menu</zorder>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLabel" name="P07BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>image/SystemSet.png</pixmap>
</property>
</widget>
<zorder>P07BG</zorder>
<zorder>groupBox_2</zorder>
<zorder>groupBox_sys_2</zorder>
<zorder>indicator_Label</zorder>
<zorder>groupBox</zorder>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,391 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P08FieldTestAction</class>
<widget class="QMainWindow" name="P08FieldTestAction">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=8</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QLabel" name="P08BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>image/FieldTestAction.png</pixmap>
</property>
</widget>
<widget class="QLineEdit" name="BindNum_Title">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>300</x>
<y>170</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>当前设备</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys_2">
<property name="geometry">
<rect>
<x>600</x>
<y>260</y>
<width>681</width>
<height>511</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="Test01">
<property name="geometry">
<rect>
<x>45</x>
<y>215</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>TestShort,Index=2,Action=CmdExecute, SelectImag=SR_001.png, groupstart=4</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Test02">
<property name="geometry">
<rect>
<x>46</x>
<y>330</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>TestIsolation,Index=3,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Reset">
<property name="geometry">
<rect>
<x>393</x>
<y>220</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>TestRecover,Index=4,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="quit">
<property name="geometry">
<rect>
<x>392</x>
<y>330</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>Index=5, Action=SetPage1,SelectImag=SR_001.png, groupend=4</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QLabel" name="SwitchType">
<property name="geometry">
<rect>
<x>422</x>
<y>95</y>
<width>173</width>
<height>69</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>SwitchType, ImageValue=SwitchType_%d.png, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(30, 14, 255);</string>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLineEdit" name="AlarmMessage_0">
<property name="geometry">
<rect>
<x>365</x>
<y>60</y>
<width>291</width>
<height>41</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="mouseTracking">
<bool>true</bool>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>AlarmMessage,Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="inputMask">
<string/>
</property>
<property name="text">
<string/>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys">
<property name="geometry">
<rect>
<x>0</x>
<y>100</y>
<width>85</width>
<height>960</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="sys_menu">
<property name="geometry">
<rect>
<x>8</x>
<y>154</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=SetPage1,SelectImag=IMxx_00E.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_home">
<property name="geometry">
<rect>
<x>8</x>
<y>5</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=0, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
<widget class="QLabel" name="SwitchStatus">
<property name="geometry">
<rect>
<x>678</x>
<y>319</y>
<width>245</width>
<height>111</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>SwitchStatus, ImageValue=SwitchStatus_%d.png, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,339 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P11DeviceMenu</class>
<widget class="QMainWindow" name="P11DeviceMenu">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=11</string>
</property>
<property name="whatsThis">
<string/>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QLabel" name="P01BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>Light_image/Light_DeviceMenu.png</pixmap>
</property>
</widget>
<widget class="QGroupBox" name="Btns">
<property name="geometry">
<rect>
<x>234</x>
<y>179</y>
<width>771</width>
<height>701</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="Btn07">
<property name="geometry">
<rect>
<x>400</x>
<y>229</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=7, Action=SetPage0,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>返回主页</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn01">
<property name="geometry">
<rect>
<x>18</x>
<y>114</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=1,Action=SetPage12+SetBinding,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>运行数据</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn02">
<property name="geometry">
<rect>
<x>18</x>
<y>229</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=2, Action=SetPage13+SetBinding,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>开关操作</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn03">
<property name="geometry">
<rect>
<x>18</x>
<y>345</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=3, Action=SetPage14+SetBinding,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string> 保护参数设置</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn04">
<property name="geometry">
<rect>
<x>20</x>
<y>460</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=4, Action=SetPage17+SetBinding,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string> 系统参数设置</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="BindNum_Title">
<property name="geometry">
<rect>
<x>90</x>
<y>10</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>设备</string>
</property>
</widget>
<widget class="QPushButton" name="Btn05">
<property name="geometry">
<rect>
<x>18</x>
<y>575</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=5, Action=SetPage16+SetBinding+CmdAlarmNext,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>故障查询</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn06">
<property name="geometry">
<rect>
<x>400</x>
<y>114</y>
<width>364</width>
<height>85</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>29</pointsize>
</font>
</property>
<property name="statusTip">
<string>Index=6, Action=SetPage18+SetBinding ,SelectImag=IM01_01.png</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(249, 136, 50);</string>
</property>
<property name="text">
<string>现场试验</string>
</property>
<property name="iconSize">
<size>
<width>364</width>
<height>85</height>
</size>
</property>
</widget>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,573 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P12DataView</class>
<widget class="QMainWindow" name="P12DataView">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=12</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QLabel" name="TestCameraView">
<property name="geometry">
<rect>
<x>810</x>
<y>120</y>
<width>1071</width>
<height>841</height>
</rect>
</property>
<property name="statusTip">
<string>canvas1=camera0, Timeout=3000</string>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLabel" name="CameralUrlLabel">
<property name="geometry">
<rect>
<x>340</x>
<y>10</y>
<width>391</width>
<height>16</height>
</rect>
</property>
<property name="statusTip">
<string>cameral_url=canvas1</string>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLabel" name="CameralUrlLabel_2">
<property name="geometry">
<rect>
<x>750</x>
<y>10</y>
<width>411</width>
<height>16</height>
</rect>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLabel" name="P02BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="styleSheet">
<string>background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>Light_image/Light_DataView.png</pixmap>
</property>
</widget>
<widget class="QLineEdit" name="BindNum_Title">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>170</x>
<y>130</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>当前设备</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QGroupBox" name="groupBox">
<property name="geometry">
<rect>
<x>100</x>
<y>240</y>
<width>671</width>
<height>781</height>
</rect>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">border:none;
background-color: rgba(255, 255, 255,0);</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QLineEdit" name="lineEdit_15">
<property name="geometry">
<rect>
<x>304</x>
<y>500</y>
<width>71</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Uab, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_13">
<property name="geometry">
<rect>
<x>70</x>
<y>500</y>
<width>71</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Ia, Timeout=5000,</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_14">
<property name="geometry">
<rect>
<x>70</x>
<y>575</y>
<width>71</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Ib, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_16">
<property name="geometry">
<rect>
<x>70</x>
<y>650</y>
<width>71</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Ic, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_18">
<property name="geometry">
<rect>
<x>305</x>
<y>574</y>
<width>71</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Ubc, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_19">
<property name="geometry">
<rect>
<x>305</x>
<y>650</y>
<width>71</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Uca, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_25">
<property name="geometry">
<rect>
<x>520</x>
<y>570</y>
<width>71</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Ro, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_27">
<property name="geometry">
<rect>
<x>531</x>
<y>494</y>
<width>71</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>OnCount, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLabel" name="m01_SwitchStatus_0">
<property name="geometry">
<rect>
<x>90</x>
<y>120</y>
<width>310</width>
<height>170</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>SwitchStatus, ImageValue=IM03_SwitchStatus_%d.png, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys">
<property name="geometry">
<rect>
<x>0</x>
<y>100</y>
<width>85</width>
<height>960</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="sys_menu">
<property name="geometry">
<rect>
<x>8</x>
<y>151</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=0, Action=SetPage11,SelectImag=IMxx_00E.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_home">
<property name="geometry">
<rect>
<x>8</x>
<y>3</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
<zorder>P02BG</zorder>
<zorder>TestCameraView</zorder>
<zorder>CameralUrlLabel</zorder>
<zorder>CameralUrlLabel_2</zorder>
<zorder>BindNum_Title</zorder>
<zorder>groupBox</zorder>
<zorder>indicator_Label</zorder>
<zorder>groupBox_sys</zorder>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,345 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P13SwitchAction</class>
<widget class="QMainWindow" name="P13SwitchAction">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=13</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QLabel" name="P03BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>Light_image/Ligth_SwitchAction.png</pixmap>
</property>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys">
<property name="geometry">
<rect>
<x>0</x>
<y>100</y>
<width>85</width>
<height>960</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="sys_menu">
<property name="geometry">
<rect>
<x>8</x>
<y>150</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=SetPage11,SelectImag=IMxx_00E.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_home">
<property name="geometry">
<rect>
<x>8</x>
<y>3</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=0, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_sys_2">
<property name="geometry">
<rect>
<x>290</x>
<y>180</y>
<width>1300</width>
<height>781</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="SwitchOn">
<property name="geometry">
<rect>
<x>147</x>
<y>490</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>SwitchOn,Index=2,Action=CmdExecute, SelectImag=SR_001.png, groupstart=6</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="SwitchOff">
<property name="geometry">
<rect>
<x>411</x>
<y>493</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>SwitchOff,Index=3,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QLabel" name="m01_SwitchStatus_0">
<property name="geometry">
<rect>
<x>500</x>
<y>170</y>
<width>310</width>
<height>170</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>SwitchStatus, ImageValue=IM03_SwitchStatus_%d.png, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QPushButton" name="SwitchRecover">
<property name="geometry">
<rect>
<x>674</x>
<y>493</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>SwitchOff,Index=4,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="m03_AlarmMessage_0">
<property name="geometry">
<rect>
<x>581</x>
<y>98</y>
<width>281</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="statusTip">
<string>AlarmMessage,Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QPushButton" name="quit">
<property name="geometry">
<rect>
<x>940</x>
<y>490</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>Index=7, Action=SetPage11,SelectImag=SR_001.png, groupend=6</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="BindNum_Title">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>0</x>
<y>10</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>当前设备照明</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
</widget>
</widget>
</widget>
<resources/>
<connections/>
</ui>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,637 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P16FaultQuery</class>
<widget class="QMainWindow" name="P16FaultQuery">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=16</string>
</property>
<property name="whatsThis">
<string/>
</property>
<widget class="QWidget" name="centralwidget">
<property name="statusTip">
<string/>
</property>
<widget class="QLabel" name="P06BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>Light_image/Ligth_FaultQuery.png</pixmap>
</property>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys_2">
<property name="geometry">
<rect>
<x>640</x>
<y>310</y>
<width>641</width>
<height>581</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=2</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="Btn_Pre">
<property name="geometry">
<rect>
<x>51</x>
<y>410</y>
<width>85</width>
<height>169</height>
</rect>
</property>
<property name="statusTip">
<string>Index=2,Action=CmdAlarmPrev, SelectImag=IM03_001.png, groupstart=3</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Btn_Next">
<property name="geometry">
<rect>
<x>270</x>
<y>410</y>
<width>85</width>
<height>169</height>
</rect>
</property>
<property name="statusTip">
<string>Index=3,Action=CmdAlarmNext, SelectImag=IM03_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="alarmTitle">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>120</x>
<y>75</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(160, 206, 226);</string>
</property>
<property name="text">
<string>..</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="alarmTime">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>120</x>
<y>35</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(160, 206, 226);</string>
</property>
<property name="text">
<string>...</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="alarmMsg">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>120</x>
<y>118</y>
<width>491</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(255, 126, 21);</string>
</property>
<property name="text">
<string>...</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QPushButton" name="sys_menu_2">
<property name="geometry">
<rect>
<x>488</x>
<y>410</y>
<width>85</width>
<height>169</height>
</rect>
</property>
<property name="statusTip">
<string>Index=4, Action=SetPage11, SelectImag=IM03_001.png, groupend=3</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox">
<property name="geometry">
<rect>
<x>650</x>
<y>485</y>
<width>671</width>
<height>291</height>
</rect>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">border:none;
background-color: rgba(255, 255, 255,0);</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QLineEdit" name="lineEdit_15">
<property name="geometry">
<rect>
<x>260</x>
<y>27</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmUb, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_13">
<property name="geometry">
<rect>
<x>40</x>
<y>27</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmUa, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_14">
<property name="geometry">
<rect>
<x>40</x>
<y>82</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmIa, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_18">
<property name="geometry">
<rect>
<x>260</x>
<y>82</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmIb, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_21">
<property name="geometry">
<rect>
<x>480</x>
<y>27</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmUc, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_22">
<property name="geometry">
<rect>
<x>480</x>
<y>81</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmIc, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_23">
<property name="geometry">
<rect>
<x>480</x>
<y>137</y>
<width>81</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>14</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>AlarmRo, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>.</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_sys">
<property name="geometry">
<rect>
<x>0</x>
<y>100</y>
<width>85</width>
<height>960</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="sys_menu">
<property name="geometry">
<rect>
<x>7</x>
<y>149</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=SetPage11,SelectImag=IMxx_00E.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_home">
<property name="geometry">
<rect>
<x>8</x>
<y>1</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=0, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_2">
<property name="geometry">
<rect>
<x>320</x>
<y>170</y>
<width>421</width>
<height>91</height>
</rect>
</property>
<property name="styleSheet">
<string notr="true">border:none;
background-color: rgba(255, 255, 255,0);</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QLineEdit" name="BindNum_Title">
<property name="geometry">
<rect>
<x>10</x>
<y>20</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>当前设备</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
</widget>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,792 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P17SystemSet</class>
<widget class="QMainWindow" name="P17SystemSet">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=17</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QGroupBox" name="groupBox">
<property name="geometry">
<rect>
<x>91</x>
<y>187</y>
<width>450</width>
<height>874</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=14</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QLineEdit" name="lineEdit_28">
<property name="geometry">
<rect>
<x>270</x>
<y>100</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Temperature, Action=Modify, Index=1, Format=%03.0f, Caption=温度设定,Timeout=5000,SelectImag=P4_ParaSelect.png,groupstart=10</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_29">
<property name="geometry">
<rect>
<x>270</x>
<y>155</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Gas, Action=Modify, Index=2, Alias=alias_input, Caption=瓦斯触点,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_30">
<property name="geometry">
<rect>
<x>270</x>
<y>210</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>GasDelay, Action=Modify, Index=3, Format=%06.2f, Caption=瓦斯延时, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_31">
<property name="geometry">
<rect>
<x>270</x>
<y>265</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>GasConcentration, Action=Modify, Index=4, Format=%05.2f, Caption=瓦斯浓度, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_32">
<property name="geometry">
<rect>
<x>270</x>
<y>320</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>Fan, Action=Modify, Index=5, Alias=alias_input, Caption=风电触点,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_36">
<property name="geometry">
<rect>
<x>270</x>
<y>375</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>FanDelay, Action=Modify, Index=6, Format=%06.2f, Caption=风电延时, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_37">
<property name="geometry">
<rect>
<x>270</x>
<y>430</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>FarAndNearMode, Action=Modify, Index=7, Alias=alias_remote, Caption=远近控模式,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_38">
<property name="geometry">
<rect>
<x>270</x>
<y>485</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>MaintenanceMode, Action=Modify, Index=8, Alias=alias_bool, Caption=维修模式,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="BlankTimelineEdit">
<property name="geometry">
<rect>
<x>270</x>
<y>540</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>System=ScreenBlankingTime, Action=ModifySystem, Index=9,SelectImag=P4_ParaSelect.png, password</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_44">
<property name="geometry">
<rect>
<x>270</x>
<y>595</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>System=SystemPassWord, Action=ModifySystem, Index=10,SelectImag=P4_ParaSelect.png, password,groupend=10</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>****</string>
</property>
<property name="echoMode">
<enum>QLineEdit::Password</enum>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_2">
<property name="geometry">
<rect>
<x>545</x>
<y>186</y>
<width>450</width>
<height>874</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=15</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QLineEdit" name="lineEdit_26">
<property name="geometry">
<rect>
<x>270</x>
<y>85</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>485Address, Action=Modify, Index=1, Format=%03.0f, Caption=485地址, Timeout=5000,SelectImag=P4_ParaSelect.png, groupstart=5</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_27">
<property name="geometry">
<rect>
<x>270</x>
<y>145</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>485Baud, Action=Modify, Index=2, Alias=alias_baud, Caption=485波特率,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_33">
<property name="geometry">
<rect>
<x>270</x>
<y>200</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>485Parity, Action=Modify, Index=3, Alias=alias_parity, Caption=485校验,Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_34">
<property name="geometry">
<rect>
<x>270</x>
<y>255</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>CANAddress, Action=Modify, Index=4, Format=%03.0f, Caption=CAN地址, Timeout=5000,SelectImag=P4_ParaSelect.png</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_35">
<property name="geometry">
<rect>
<x>270</x>
<y>310</y>
<width>120</width>
<height>25</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="focusPolicy">
<enum>Qt::NoFocus</enum>
</property>
<property name="statusTip">
<string>CANBaud, Action=Modify, Index=5, Alias=alias_can_baud, Caption=CAN波特率,Timeout=5000,SelectImag=P4_ParaSelect.png, groupend=5</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(85, 170, 127,0);
color: rgb(177, 229, 252);</string>
</property>
<property name="text">
<string>0</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
<property name="readOnly">
<bool>false</bool>
</property>
</widget>
</widget>
<widget class="QGroupBox" name="groupBox_sys_2">
<property name="geometry">
<rect>
<x>0</x>
<y>80</y>
<width>1920</width>
<height>970</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string/>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="sys_P00_3">
<property name="geometry">
<rect>
<x>547</x>
<y>90</y>
<width>450</width>
<height>877</height>
</rect>
</property>
<property name="statusTip">
<string>groupend=2,Index=3, Action=SetMain15,SelectImag=IM04_00.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="BindNum_Title">
<property name="geometry">
<rect>
<x>180</x>
<y>36</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>当前设备</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QPushButton" name="sys_P00_2">
<property name="geometry">
<rect>
<x>92</x>
<y>90</y>
<width>450</width>
<height>877</height>
</rect>
</property>
<property name="statusTip">
<string>groupstart=2,Index=2, Action=SetMain14,SelectImag=IM04_00.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>450</width>
<height>876</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_home">
<property name="geometry">
<rect>
<x>9</x>
<y>24</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=0, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_menu">
<property name="geometry">
<rect>
<x>9</x>
<y>173</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=SetPage11,SelectImag=IMxx_00E.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<zorder>sys_P00_2</zorder>
<zorder>sys_P00_3</zorder>
<zorder>BindNum_Title</zorder>
<zorder>sys_home</zorder>
<zorder>sys_menu</zorder>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QLabel" name="P07BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string notr="true"/>
</property>
<property name="pixmap">
<pixmap>Light_image/Light_SystemSet.png</pixmap>
</property>
</widget>
<zorder>P07BG</zorder>
<zorder>groupBox</zorder>
<zorder>groupBox_2</zorder>
<zorder>groupBox_sys_2</zorder>
<zorder>indicator_Label</zorder>
</widget>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -0,0 +1,345 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>P18FieldTestAction</class>
<widget class="QMainWindow" name="P18FieldTestAction">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<property name="statusTip">
<string>Page=18</string>
</property>
<widget class="QWidget" name="centralwidget">
<widget class="QLabel" name="P08BG">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1920</width>
<height>1080</height>
</rect>
</property>
<property name="text">
<string/>
</property>
<property name="pixmap">
<pixmap>Light_image/Light_FieldTestAction.png</pixmap>
</property>
</widget>
<widget class="QLineEdit" name="BindNum_Title">
<property name="enabled">
<bool>false</bool>
</property>
<property name="geometry">
<rect>
<x>290</x>
<y>174</y>
<width>331</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>20</pointsize>
</font>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string>当前设备</string>
</property>
<property name="frame">
<bool>false</bool>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys_2">
<property name="geometry">
<rect>
<x>600</x>
<y>280</y>
<width>691</width>
<height>511</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="Test01">
<property name="geometry">
<rect>
<x>53</x>
<y>243</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>TestShort,Index=2,Action=CmdExecute, SelectImag=SR_001.png, groupstart=4</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Test02">
<property name="geometry">
<rect>
<x>53</x>
<y>357</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>TestIsolation,Index=3,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="Reset">
<property name="geometry">
<rect>
<x>400</x>
<y>248</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>TestRecover,Index=4,Action=CmdExecute, SelectImag=SR_001.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>72</height>
</size>
</property>
</widget>
<widget class="QLineEdit" name="m03_AlarmMessage_0">
<property name="geometry">
<rect>
<x>365</x>
<y>135</y>
<width>291</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<family>黑体</family>
<pointsize>16</pointsize>
</font>
</property>
<property name="statusTip">
<string>AlarmMessage,Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true">background-color: rgba(255, 238, 254,0);
color: rgb(207, 0, 13);</string>
</property>
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QLabel" name="m01_SwitchStatus_0">
<property name="geometry">
<rect>
<x>79</x>
<y>93</y>
<width>245</width>
<height>111</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>SwitchStatus, ImageValue=SwitchStatus_%d.png, Timeout=5000</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QPushButton" name="quit">
<property name="geometry">
<rect>
<x>400</x>
<y>357</y>
<width>246</width>
<height>84</height>
</rect>
</property>
<property name="statusTip">
<string>Index=5, Action=SetPage11,SelectImag=SR_001.png, groupend=4</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
<widget class="QLabel" name="indicator_Label">
<property name="geometry">
<rect>
<x>1</x>
<y>412</y>
<width>88</width>
<height>636</height>
</rect>
</property>
<property name="font">
<font>
<family>Arial</family>
<pointsize>12</pointsize>
</font>
</property>
<property name="statusTip">
<string>ImageValue=IMxx_A_%d.png</string>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="lineWidth">
<number>0</number>
</property>
<property name="text">
<string/>
</property>
</widget>
<widget class="QGroupBox" name="groupBox_sys">
<property name="geometry">
<rect>
<x>0</x>
<y>100</y>
<width>85</width>
<height>960</height>
</rect>
</property>
<property name="toolTip">
<string/>
</property>
<property name="statusTip">
<string>main=1</string>
</property>
<property name="styleSheet">
<string notr="true">border:none;</string>
</property>
<property name="title">
<string/>
</property>
<widget class="QPushButton" name="sys_menu">
<property name="geometry">
<rect>
<x>8</x>
<y>153</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=1, Action=SetPage11,SelectImag=IMxx_00E.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
<widget class="QPushButton" name="sys_home">
<property name="geometry">
<rect>
<x>8</x>
<y>4</y>
<width>72</width>
<height>144</height>
</rect>
</property>
<property name="statusTip">
<string>Index=0, Action=SetPage0,SelectImag=IMxx_00F.png</string>
</property>
<property name="text">
<string/>
</property>
<property name="iconSize">
<size>
<width>72</width>
<height>144</height>
</size>
</property>
</widget>
</widget>
</widget>
</widget>
<resources/>
<connections/>
</ui>

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 451 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,5 @@
import sys
sys_path = sys.path[0].replace("\\", "/")
sys_path_linux = sys_path + "/../.."
if sys_path_linux not in sys.path :
sys.path.append(sys_path_linux)

View File

@ -0,0 +1,186 @@
from print_color import *
import configparser
import os
def get_value_from_lead_value_str(lead_value_str : str, lead_str, default_value = None) :
value = default_value
if lead_str in lead_value_str :
value_str = lead_value_str.replace(lead_str, "")
value_str = value_str.replace("=", "")
try :
value = int(value_str)
except Exception as e :
pass
return value
def get_tip_value_str(tip_str : str, key_str : str, default_string : str = None) :
value_str = default_string
if len(tip_str) == 0 :
return value_str
tip_split_strs = tip_str.split(",")
for prop_str in tip_split_strs :
if key_str in prop_str :
prop_split_strs = prop_str.split("=")
full_cmp_str : str = prop_split_strs[0].replace(" ", "")
if len(prop_split_strs) >= 2 and full_cmp_str == key_str:
value_str = prop_split_strs[1]
return value_str
def get_tip_value(tip_str : str, key_str : str, default_value : int) :
value_str = get_tip_value_str(tip_str, key_str)
value = default_value
try :
value = int(value_str)
except Exception as e :
value = default_value
return value
def get_tip_visible_mqtt(tip_str : str, default_mqtt : str) :
value_str = get_tip_value_str(tip_str, "Visible", default_string = default_mqtt)
return value_str
def get_tip_face_detection(tip_str : str) :
return get_tip_value(tip_str, "FaceDetect", default_value = 0)
def get_tip_frame_box(tip_str : str) :
return get_tip_value(tip_str, "SelectBox", default_value = 0)
def get_tip_page(tip_str : str) :
return get_tip_value(tip_str, "Page", default_value = -1)
def get_tip_caption_str(tip_str : str) :
return get_tip_value_str(tip_str, "Caption", default_string = "")
def get_tip_alias_str(tip_str : str) :
return get_tip_value_str(tip_str, "Alias", default_string = None)
def get_tip_menu_sub_index(tip_str : str) :
return get_tip_value(tip_str, "Index", default_value = -1)
def get_tip_timeout(tip_str : str) :
return get_tip_value(tip_str, "Timeout", default_value = -1)
def get_tip_caption_index(tip_str : str) :
return get_tip_value(tip_str, "CaptionIndex", default_value = -1)
def get_tip_format(tip_str : str) :
return get_tip_value_str(tip_str, "Format", default_string = "%1.0f")
def get_tip_circuit(tip_str : str) :
return get_tip_value(tip_str, "circuit", default_value = -1)
def get_tip_main_index(tip_str : str) :
return get_tip_value(tip_str, "main", default_value = -1)
def get_tip_binding_circuit(tip_str : str) :
return get_tip_value(tip_str, "bindingcircuit", default_value = -1)
# def get_tip_group_start(tip_str : str) :
# print_normal_msg(f"Tip String:{tip_str}")
# return get_tip_value(tip_str, "groupstart", default_value = -1)
# def get_tip_group_end(tip_str : str) :
# print_normal_msg(f"Tip String:{tip_str}")
# return get_tip_value(tip_str, "groupend", default_value = -1)
def get_tip_group_start(tip_str: str):
# 创建一个局部变量来保存传入的参数 tip_str
local_tip_str = tip_str
# 直接返回状态提示信息中的组开始标签数量
return get_tip_value(local_tip_str, "groupstart", default_value=-1)
def get_tip_group_end(tip_str: str):
# 创建一个局部变量来保存传入的参数 tip_str
local_tip_str = tip_str
# 直接返回状态提示信息中的组结束标签数量
return get_tip_value(local_tip_str, "groupend", default_value=-1)
def get_tip_system(tip_str : str) :
return get_tip_value_str(tip_str, "System", default_string = None)
def get_tip_password(tip_str : str) :
return get_tip_value_str(tip_str, "Password", default_string = None)
#获取画布Id和摄像头Id
def get_tip_canvas_id_and_camera_id(tip_str : str) :
canvas_id = -1
camera_id = -1
if len(tip_str) == 0 :
return canvas_id, camera_id
tip_split_strs = tip_str.split(",")
for prop_str in tip_split_strs :
if "canvas" in prop_str and "camera" in prop_str:
prop_split_strs = prop_str.split("=")
if len(prop_split_strs) >= 2 :
canvas_id = get_value_from_lead_value_str(prop_split_strs[0], "canvas", -1)
camera_id = get_value_from_lead_value_str(prop_split_strs[1], "camera", -1)
break
return canvas_id, camera_id
def get_tip_mqtt_name(tip_str : str) :
mqtt_name = get_tip_value_str(tip_str, "mqtt", default_string = None)
if mqtt_name != None :
return mqtt_name
prop_split_strs = tip_str.split(",")
if len(prop_split_strs[0]) == 0:
return None
elif "=" not in prop_split_strs[0] :
return prop_split_strs[0]
else :
return None
class system_parameter :
_instance = None
def __new__(cls):
if cls._instance is None:
cls._instance = super().__new__(cls)
# 阅读属性/初始化属性
config = configparser.ConfigParser()
if os.path.exists("system_parameter.ini"):
config.read("system_parameter.ini")
cls._instance.screen_blanking_time = config['SystemParam']['blanking_time']
cls._instance.system_password = config['SystemParam']['password']
cls._instance.language = config['SystemParam']['language']
else:
cls._instance.screen_blanking_time = "060"
cls._instance.system_password = "2008"
cls._instance.language = "zh_CN"
cls._instance.write_to_ini()
return cls._instance
def change_screen_blanking_time(self, time):
self.screen_blanking_time = time
self.write_to_ini()
def get_screen_blanking_time(self):
return self.screen_blanking_time
def set_system_password(self, password):
self.system_password = password
self.write_to_ini()
def get_system_password(self):
return self.system_password
def set_system_language(self, language):
self.language = language
self.write_to_ini()
def get_system_language(self):
return self.language
# 向文件存储系统信息
def write_to_ini(self):
system_param = configparser.ConfigParser()
system_param['SystemParam'] = {'language': self.language,
'blanking_time': self.screen_blanking_time,
'password': self.system_password}
with open('system_parameter.ini', 'w') as f:
system_param.write(f)

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Some files were not shown because too many files have changed in this diff Show More