diff --git a/RespCoarseAlign.py b/RespCoarseAlign.py
index ef24701..7bbcb0e 100644
--- a/RespCoarseAlign.py
+++ b/RespCoarseAlign.py
@@ -10,13 +10,15 @@
import sys
from pathlib import Path
-import mne
+import pyedflib
import numpy as np
import pandas as pd
-from PySide6.QtWidgets import QApplication, QMainWindow, QFileDialog, QMessageBox
-from PySide6.QtCore import QFile
+from PySide6.QtGui import QPixmap, QImage
+
+from PySide6.QtWidgets import QApplication, QMainWindow, QFileDialog, QMessageBox, QWidget, QPushButton
+from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
+from matplotlib.figure import Figure
from scipy import signal
-from scipy.signal import butter
from ui.Mian import Ui_mainWindow as Ui_respCoarseAlign
from ui.setings import Ui_MainWindow as Ui_Setting
@@ -47,6 +49,41 @@ Conf = {
"ApplyFrequency": 5
}
+ButtonState = {
+ "Default": {
+ "pushButton_Refresh": True,
+ "pushButton_OpenFile": True,
+ "pushButton_Standardize": False,
+ "pushButton_CutOff": False,
+ "pushButton_GetPos": False,
+ "pushButton_Align": False,
+ "pushButton_JUMP": False,
+ "pushButton_EM1": False,
+ "pushButton_EM10": False,
+ "pushButton_EM100": False,
+ "pushButton_EP1": False,
+ "pushButton_EP10": False,
+ "pushButton_EP100": False,
+ "pushButton_SaveInfo": False,
+ "pushButton_Exit": True},
+ "Current": {
+ "pushButton_Refresh": True,
+ "pushButton_OpenFile": True,
+ "pushButton_Standardize": False,
+ "pushButton_CutOff": False,
+ "pushButton_GetPos": False,
+ "pushButton_Align": False,
+ "pushButton_JUMP": False,
+ "pushButton_EM1": False,
+ "pushButton_EM10": False,
+ "pushButton_EM100": False,
+ "pushButton_EP1": False,
+ "pushButton_EP10": False,
+ "pushButton_EP100": False,
+ "pushButton_SaveInfo": False,
+ "pushButton_Exit": True}
+}
+
class SettingWindow(QMainWindow):
def __init__(self):
@@ -146,22 +183,26 @@ class Data:
self.raw_ABD = None
self.raw_XX = None
+ self.processed_THO = None
+ self.processed_ABD = None
+ self.processed_XX = None
+
self.PSG_minutes = None
self.XX_minutes = None
def OpenFile(self):
# 判断是edf还是npy或txt
if self.PSGDataPath.suffix == ".edf":
- with mne.io.read_raw_edf(self.PSGDataPath) as PSG:
- # read THO ABD
- if self.Config["PSGConfig"]["THOChannel"]["auto"]:
- self.raw_THO = PSG.pick_channels(["THO"]).get_data()[0]
- else:
- self.raw_THO = PSG.pick_channels([self.Config["PSGConfig"]["THOChannel"]["Channel"]]).get_data()[0]
- if self.Config["PSGConfig"]["ABDChannel"]["auto"]:
- self.raw_ABD = PSG.pick_channels(["ABD"]).get_data()[0]
- else:
- self.raw_ABD = PSG.pick_channels([self.Config["PSGConfig"]["ABDChannel"]["Channel"]]).get_data()[0]
+ PSG = pyedflib.EdfReader(self.PSGDataPath.__str__())
+ if self.Config["PSGConfig"]["THOChannel"]["auto"]:
+ self.raw_THO = PSG.readSignal(PSG.getSignalLabels().index('Effort THO'))
+ else:
+ self.raw_THO = PSG.readSignal(self.Config["PSGConfig"]["THOChannel"]["Channel"])
+ if self.Config["PSGConfig"]["ABDChannel"]["auto"]:
+ self.raw_ABD = PSG.readSignal(PSG.getSignalLabels().index('Effort ABD'))
+ else:
+ self.raw_ABD = PSG.readSignal(self.Config["PSGConfig"]["ABDChannel"]["Channel"])
+ PSG.close()
else:
return False, "PSG文件格式错误"
@@ -173,8 +214,10 @@ class Data:
return False, "XX文件格式错误"
# 获取时长
- self.PSG_minutes = self.raw_THO.shape[0] / self.Config["PSGConfig"]["Frequency"] / 60
- self.XX_minutes = self.raw_XX.shape[0] / self.Config["XXConfig"]["Frequency"] / 60
+ # print(self.raw_THO.shape, self.raw_XX.shape)
+ # print(self.Config["PSGConfig"]["Frequency"], self.Config["XXConfig"]["Frequency"])
+ self.PSG_minutes = round(self.raw_THO.shape[0] / self.Config["PSGConfig"]["Frequency"] / 60)
+ self.XX_minutes = round(self.raw_XX.shape[0] / self.Config["XXConfig"]["Frequency"] / 60)
return True, "读取成功"
@@ -186,35 +229,157 @@ class Data:
return signal.sosfilt(sos, data)
# 滤波
- self.raw_THO = butter_bandpass_filter(self.raw_THO, self.Config["RespFilterConfig"]["LowCut"],
- self.Config["RespFilterConfig"]["HighCut"],
- self.Config["PSGConfig"]["Frequency"],
- self.Config["RespFilterConfig"]["Order"])
- self.raw_ABD = butter_bandpass_filter(self.raw_ABD, self.Config["RespFilterConfig"]["LowCut"],
- self.Config["RespFilterConfig"]["HighCut"],
- self.Config["PSGConfig"]["Frequency"],
- self.Config["RespFilterConfig"]["Order"])
- self.raw_XX = butter_bandpass_filter(self.raw_XX, self.Config["RespFilterConfig"]["LowCut"],
- self.Config["RespFilterConfig"]["HighCut"],
- self.Config["XXConfig"]["Frequency"],
- self.Config["RespFilterConfig"]["Order"])
+ self.processed_THO = butter_bandpass_filter(self.raw_THO, self.Config["RespFilterConfig"]["LowCut"],
+ self.Config["RespFilterConfig"]["HighCut"],
+ self.Config["PSGConfig"]["Frequency"],
+ self.Config["RespFilterConfig"]["Order"])
+ self.processed_ABD = butter_bandpass_filter(self.raw_ABD, self.Config["RespFilterConfig"]["LowCut"],
+ self.Config["RespFilterConfig"]["HighCut"],
+ self.Config["PSGConfig"]["Frequency"],
+ self.Config["RespFilterConfig"]["Order"])
+ self.processed_XX = butter_bandpass_filter(self.raw_XX, self.Config["RespFilterConfig"]["LowCut"],
+ self.Config["RespFilterConfig"]["HighCut"],
+ self.Config["XXConfig"]["Frequency"],
+ self.Config["RespFilterConfig"]["Order"])
- def Standardize(self):
- if self.Config["RawSignal"]:
- # 重采样
- self.raw_THO = signal.resample(self.raw_THO, int(self.PSG_minutes * 60 * self.Config["ApplyFrequency"]))
- self.raw_ABD = signal.resample(self.raw_ABD, int(self.PSG_minutes * 60 * self.Config["ApplyFrequency"]))
- self.raw_XX = signal.resample(self.raw_XX, int(self.XX_minutes * 60 * self.Config["ApplyFrequency"]))
- else:
- # 滤波
- self.__Filter__()
- # 重采样
- self.raw_THO = signal.resample(self.raw_THO, int(self.PSG_minutes * 60 * self.Config["ApplyFrequency"]))
- self.raw_ABD = signal.resample(self.raw_ABD, int(self.PSG_minutes * 60 * self.Config["ApplyFrequency"]))
- self.raw_XX = signal.resample(self.raw_XX, int(self.XX_minutes * 60 * self.Config["ApplyFrequency"]))
+ return
- # 判断是否去基线
- # 判断是否标准化
+ def Standardize_0(self):
+ # 重采样
+ self.processed_THO = signal.resample(self.raw_THO, int(self.PSG_minutes * 60 * self.Config["ApplyFrequency"]))
+ self.processed_ABD = signal.resample(self.raw_ABD, int(self.PSG_minutes * 60 * self.Config["ApplyFrequency"]))
+ self.processed_XX = signal.resample(self.raw_XX, int(self.XX_minutes * 60 * self.Config["ApplyFrequency"]))
+ return True, "原始信号仅重采样"
+
+ def Standardize_1(self):
+ self.__Filter__()
+ return True, "呼吸提取完成 "
+
+ def Standardize_2(self):
+ # 如果XX采样率大于PSG采样率,那么XX重采样到PSG采样率
+ if self.Config["XXConfig"]["Frequency"] > self.Config["PSGConfig"]["Frequency"]:
+ # 用[::]完成
+ self.processed_XX = self.processed_XX[
+ ::int(self.Config["XXConfig"]["Frequency"] / self.Config["PSGConfig"]["Frequency"])]
+ # 如果XX采样率小于PSG采样率,那么XX重采样到PSG采样率
+ elif self.Config["XXConfig"]["Frequency"] < self.Config["PSGConfig"]["Frequency"] < 100:
+ # 用repeat完成
+ self.processed_XX = np.repeat(self.processed_XX,
+ int(self.Config["PSGConfig"]["Frequency"] / self.Config["XXConfig"][
+ "Frequency"]),
+ axis=0)
+ # 修改Config
+ self.Config.update({"temp_frequency": self.Config["PSGConfig"]["Frequency"]})
+ return True, "预重采样完成"
+
+ def Standardize_3(self):
+ temp_frequency = self.Config["temp_frequency"]
+ # 判断是否去基线
+ if self.Config["PSGConfig"]["PSGDelBase"]:
+ # 减去四秒钟平均滤波
+ self.processed_THO = self.processed_THO - np.convolve(self.processed_THO,
+ np.ones(int(4 * temp_frequency)) / int(
+ 4 * temp_frequency),
+ mode='same')
+ self.processed_ABD = self.processed_ABD - np.convolve(self.processed_ABD,
+ np.ones(int(4 * temp_frequency)) / int(
+ 4 * temp_frequency),
+ mode='same')
+ if self.Config["XXConfig"]["XXDelBase"]:
+ self.processed_XX = self.processed_XX - np.convolve(self.processed_XX,
+ np.ones(int(4 * temp_frequency)) / int(
+ 4 * temp_frequency),
+ mode='same')
+ return True, "去基线完成"
+
+ def Standardize_4(self):
+ # 判断是否标准化
+ if self.Config["PSGConfig"]["PSGZScore"]:
+ self.processed_THO = (self.processed_THO - np.mean(self.processed_THO)) / np.std(self.processed_THO)
+ self.processed_ABD = (self.processed_ABD - np.mean(self.processed_ABD)) / np.std(self.processed_ABD)
+ if self.Config["XXConfig"]["XXZScore"]:
+ self.processed_XX = (self.processed_XX - np.mean(self.processed_XX)) / np.std(self.processed_XX)
+
+ return True, "标准化完成"
+
+ def Standardize_5(self):
+ # 重采样
+ self.processed_THO = signal.resample(self.processed_THO,
+ int(self.PSG_minutes * 60 * self.Config["ApplyFrequency"]))
+ self.processed_ABD = signal.resample(self.processed_ABD,
+ int(self.PSG_minutes * 60 * self.Config["ApplyFrequency"]))
+ self.processed_XX = signal.resample(self.processed_XX,
+ int(self.XX_minutes * 60 * self.Config["ApplyFrequency"]))
+
+ return True, "最终重采样完成"
+
+ def DrawPicRawOverview(self):
+ fig = Figure(figsize=(8, 7), dpi=100)
+ canvas = FigureCanvas(fig)
+ max_x = max(self.processed_THO.shape[0], self.processed_ABD.shape[0], self.processed_XX.shape[0])
+ ax1 = fig.add_subplot(311)
+ ax1.plot(self.processed_THO, color='blue')
+ ax1.set_xlim(0, max_x)
+ ax1.set_title("THO")
+
+ ax2 = fig.add_subplot(312)
+ ax2.plot(self.processed_XX, color='blue')
+ ax2.set_xlim(0, max_x)
+ ax2.set_title("xinxiao")
+
+ ax3 = fig.add_subplot(313)
+ ax3.plot(self.processed_ABD, color='blue')
+ ax3.set_xlim(0, max_x)
+ ax3.set_title("ABD")
+
+ width, height = fig.figbbox.width, fig.figbbox.height
+ fig.canvas.draw()
+ # 返回图片以便存到QPixIamge
+ return canvas.buffer_rgba(), width, height
+
+ def DrawPicOverviewWithCutOff(self):
+ fig = Figure(figsize=(8, 7), dpi=100)
+ canvas = FigureCanvas(fig)
+ max_x = max(self.processed_THO.shape[0] + self.Config["PSGConfig"]["PreA"],
+ self.processed_XX.shape[0] + self.Config["XXConfig"]["PreA"])
+ min_x = min(self.Config["PSGConfig"]["PreA"], self.Config["XXConfig"]["PreA"], 0)
+ ax1 = fig.add_subplot(311)
+ ax1.plot(
+ np.linspace(self.Config["PSGConfig"]["PreA"], len(self.processed_THO) + self.Config["PSGConfig"]["PreA"],
+ len(self.processed_THO)), self.processed_THO, color='blue')
+ # 绘制x = PreCut的线 和 x = PostCut的虚线
+ ax1.axvline(x=self.Config["PSGConfig"]["PreCut"] + self.Config["PSGConfig"]["PreA"], color='red',
+ linestyle='--')
+ ax1.axvline(x=len(self.processed_THO) - self.Config["PSGConfig"]["PostCut"] + self.Config["PSGConfig"]["PreA"],
+ color='red', linestyle='--')
+
+ ax1.set_xlim(min_x, max_x)
+ ax1.set_title("THO")
+
+ ax2 = fig.add_subplot(312)
+ ax2.plot(np.linspace(self.Config["XXConfig"]["PreA"], len(self.processed_XX) + self.Config["XXConfig"]["PreA"],
+ len(self.processed_XX)), self.processed_XX, color='blue')
+ ax2.axvline(x=self.Config["XXConfig"]["PreCut"] + self.Config["XXConfig"]["PreA"], color='red', linestyle='--')
+ ax2.axvline(x=len(self.processed_XX) - self.Config["XXConfig"]["PostCut"] + self.Config["XXConfig"]["PreA"],
+ color='red', linestyle='--')
+ ax2.set_xlim(min_x, max_x)
+ ax2.set_title("xinxiao")
+
+ ax3 = fig.add_subplot(313)
+ ax3.plot(
+ np.linspace(self.Config["PSGConfig"]["PreA"], len(self.processed_ABD) + self.Config["PSGConfig"]["PreA"],
+ len(self.processed_ABD)), self.processed_ABD, color='blue')
+ ax3.axvline(x=self.Config["PSGConfig"]["PreCut"] + self.Config["PSGConfig"]["PreA"], color='red',
+ linestyle='--')
+ ax3.axvline(x=len(self.processed_THO) - self.Config["PSGConfig"]["PostCut"] + self.Config["PSGConfig"]["PreA"],
+ color='red', linestyle='--')
+ ax3.set_xlim(min_x, max_x)
+ ax3.set_title("ABD")
+
+ width, height = fig.figbbox.width, fig.figbbox.height
+ fig.canvas.draw()
+ # 返回图片以便存到QPixIamge
+ return canvas.buffer_rgba(), width, height
class MainWindow(QMainWindow):
@@ -228,12 +393,74 @@ class MainWindow(QMainWindow):
# checkbox custom 和SpinBox 互斥
self.ui.checkBox_custom.stateChanged.connect(self.__customChannel__)
+ self.__disableAllButton__()
# 绑定事件
# 刷新键分别获取PSG和XX文件夹里面的数据,获取所有编号显示在下拉框,比对编号同时存在的可选,仅存在一个文件夹的编号不可选
self.ui.pushButton_Refresh.clicked.connect(self.__refresh__)
self.ui.pushButton_OpenFile.clicked.connect(self.__openFile__)
self.ui.pushButton_Standardize.clicked.connect(self.__standardize__)
+ self.ui.pushButton_CutOff.clicked.connect(self.__cutOff__)
+ self.ui.pushButton_GetPos.clicked.connect(self.__getPosition__)
+ # self.ui.pushButton_Align.clicked.connect(self.__align__)
+ # self.ui.pushButton_JUMP.clicked.connect(self.__jump__)
+ # self.ui.pushButton_EM1.clicked.connect(self.__EM1__)
+ # self.ui.pushButton_EM10.clicked.connect(self.__EM10__)
+ # self.ui.pushButton_EM100.clicked.connect(self.__EM100__)
+ # self.ui.pushButton_EP1.clicked.connect(self.__EP1__)
+ # self.ui.pushButton_EP10.clicked.connect(self.__EP10__)
+ # self.ui.pushButton_EP100.clicked.connect(self.__EP100__)
+ # self.ui.pushButton_SaveInfo.clicked.connect(self.__saveInfo__)
+ self.ui.pushButton_Exit.clicked.connect(self.__exit__)
+
+ def __resset__(self):
+ ButtonState["Current"].update(ButtonState["Default"].copy())
+ ButtonState["Current"]["pushButton_Standardize"] = True
+ self.ui.spinBox_PSGPreA.setValue(0)
+ self.ui.spinBox_PSGPreCut.setValue(0)
+ self.ui.spinBox_PSGPostCut.setValue(0)
+ self.ui.spinBox_XXPreA.setValue(0)
+ self.ui.spinBox_XXPreCut.setValue(0)
+ self.ui.spinBox_XXPostCut.setValue(0)
+ self.ui.checkBox_NABD.setChecked(False)
+ self.ui.checkBox_NTHO.setChecked(False)
+ self.ui.checkBox_PABD.setChecked(False)
+ self.ui.checkBox_PTHO.setChecked(False)
+ self.ui.checkBox_custom.setChecked(False)
+ self.ui.spinBox_SelectEpoch.setValue(0)
+ self.ui.spinBox_custom.setValue(0)
+
+ def __cutOff__(self):
+ Conf2 = self.data.Config.copy()
+ Conf2["PSGConfig"].update({"PreA": self.ui.spinBox_PSGPreA.value(),
+ "PreCut": self.ui.spinBox_PSGPreCut.value(),
+ "PostCut": self.ui.spinBox_PSGPostCut.value()})
+ Conf2["XXConfig"].update({"PreA": self.ui.spinBox_XXPreA.value(),
+ "PreCut": self.ui.spinBox_XXPreCut.value(),
+ "PostCut": self.ui.spinBox_XXPostCut.value()})
+
+ self.data.Config = Conf2
+ self.__plot__()
+
+ # matplotlib 绘制图像
+ def __plot__(self):
+ # 判读是哪个按钮点击调用的本程序
+ if self.sender() == self.ui.pushButton_Standardize:
+ buffer, width, height = self.data.DrawPicRawOverview()
+ elif self.sender() == self.ui.pushButton_CutOff:
+ buffer, width, height = self.data.DrawPicOverviewWithCutOff()
+ else:
+ return
+ # 显示到labelPic上
+ img = QImage(buffer, width, height, QImage.Format_RGBA8888)
+ self.ui.label_Pic.setPixmap(QPixmap(img))
+
+ # noinspection PyUnresolvedReferences
+ def __exit__(self):
+ # 选择是否确认退出
+ reply = QMessageBox.question(self, '确认', '确认退出吗?', QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
+ if reply == QMessageBox.Yes:
+ self.close()
def __customChannel__(self, state):
if state == 2:
@@ -256,6 +483,8 @@ class MainWindow(QMainWindow):
# 获取两文件夹下所有的txt和npy文件编号
PSGFiles = [file.stem for file in PSGPath.glob("*.edf")]
XXFiles = [file.stem for file in XXPath.glob("*.txt")] + [file.stem for file in XXPath.glob("*.npy")]
+ sorted(PSGFiles)
+ sorted(XXFiles)
# 获取两文件夹下同时存在的编号
print(PSGFiles, XXFiles)
Files = list(set(PSGFiles).intersection(set(XXFiles)))
@@ -277,7 +506,31 @@ class MainWindow(QMainWindow):
self.ui.comboBox_SelectFile.model().item(
FilesOnlyInXX.index(file) + len(Files) + len(FilesOnlyInPSG)).setEnabled(False)
+ def __disableAllButton__(self):
+ # 禁用所有按钮
+ all_widgets = self.centralWidget().findChildren(QWidget)
+
+ # 迭代所有部件,查找按钮并禁用它们
+ for widget in all_widgets:
+ if isinstance(widget, QPushButton):
+ if widget.objectName() in ButtonState["Current"].keys():
+ widget.setEnabled(ButtonState["Current"][widget.objectName()])
+
+ def __enableAllButton__(self):
+ # 启用按钮
+ all_widgets = self.centralWidget().findChildren(QWidget)
+
+ # 迭代所有部件,查找按钮并启用它们
+ for widget in all_widgets:
+ if isinstance(widget, QPushButton):
+ if widget.objectName() in ButtonState["Current"].keys():
+ widget.setEnabled(ButtonState["Current"][widget.objectName()])
+
def __openFile__(self):
+ self.ui.label_Info.setText("正在打开文件...")
+ self.__disableAllButton__()
+ # 长时间操作,刷新界面防止卡顿
+ QApplication.processEvents()
# 获取checkbox状态
self.data = Data(Path(self.setting.ui.lineEdit_PSGFilePath.text()),
Path(self.setting.ui.lineEdit_XXFilePath.text()),
@@ -287,13 +540,21 @@ class MainWindow(QMainWindow):
if not opened:
QMessageBox.warning(self, "警告", info)
self.ui.label_Info.setText(info)
- return
else:
self.ui.label_PSGmins.setText(str(self.data.PSG_minutes))
self.ui.label_XXmins.setText(str(self.data.XX_minutes))
+ self.ui.progressBar.setValue(100)
self.ui.label_Info.setText(info)
+ self.__resset__()
+
+
+ self.__enableAllButton__()
def __standardize__(self):
+ self.ui.progressBar.setValue(0)
+ self.ui.label_Info.setText("正在标准化...")
+ self.__disableAllButton__()
+ QApplication.processEvents()
Conf2 = self.data.Config.copy()
Conf2["RawSignal"] = self.ui.checkBox_RawSignal.isChecked()
Conf2["PSGConfig"].update({
@@ -307,7 +568,48 @@ class MainWindow(QMainWindow):
"Frequency": self.ui.spinBox_XXFreq.value(),
})
self.data.Config = Conf2
- self.data.Standardize()
+ if self.data.Config["RawSignal"]:
+ opened, info = self.data.Standardize_0()
+ if not opened:
+ QMessageBox.warning(self, "警告", info)
+ self.ui.label_Info.setText(info)
+ else:
+ self.ui.progressBar.setValue(100)
+ self.ui.label_Info.setText(info)
+ else:
+ self.ui.label_Info.setText('正在进行呼吸提取...')
+ QApplication.processEvents()
+
+ opened, info = self.data.Standardize_1()
+ self.ui.label_Info.setText(info)
+ self.ui.progressBar.setValue(10)
+ QApplication.processEvents()
+
+ opened, info = self.data.Standardize_2()
+ self.ui.progressBar.setValue(30)
+ self.ui.label_Info.setText(info)
+ QApplication.processEvents()
+
+ opened, info = self.data.Standardize_3()
+ self.ui.label_Info.setText(info)
+ self.ui.progressBar.setValue(50)
+ QApplication.processEvents()
+
+ opened, info = self.data.Standardize_4()
+ self.ui.label_Info.setText(info)
+ self.ui.progressBar.setValue(70)
+ QApplication.processEvents()
+
+ opened, info = self.data.Standardize_5()
+ self.ui.label_Info.setText(info)
+ self.ui.progressBar.setValue(90)
+ QApplication.processEvents()
+
+ self.__plot__()
+ self.ui.progressBar.setValue(100)
+ ButtonState["Current"]["pushButton_CutOff"] = True
+ ButtonState["Current"]["pushButton_GetPos"] = True
+ self.__enableAllButton__()
if __name__ == "__main__":
diff --git a/config.yaml b/config.yaml
index 4ffe01b..04d3951 100644
--- a/config.yaml
+++ b/config.yaml
@@ -1,4 +1,4 @@
-ApplyFrequency: 100
+ApplyFrequency: 5
PSGConfig:
ABDChannel:
Channel: 4
@@ -9,9 +9,9 @@ PSGConfig:
Channel: 3
auto: true
RespFilterConfig:
- HighCut: 0.71
+ HighCut: 0.7
LowCut: 0.01
Order: 4
XXConfig:
- Frequency: 100
+ Frequency: 1000
Path: D:/code/RespCoarseAlignment/Data/XX
diff --git a/ui/Mian.py b/ui/Mian.py
index 34df4db..dc72806 100644
--- a/ui/Mian.py
+++ b/ui/Mian.py
@@ -33,7 +33,7 @@ class Ui_mainWindow(object):
sizePolicy.setHeightForWidth(mainWindow.sizePolicy().hasHeightForWidth())
mainWindow.setSizePolicy(sizePolicy)
mainWindow.setMinimumSize(QSize(1200, 800))
- mainWindow.setMaximumSize(QSize(1920, 1080))
+ mainWindow.setMaximumSize(QSize(1200, 800))
mainWindow.setSizeIncrement(QSize(4, 3))
self.actionDefault_Configuration = QAction(mainWindow)
self.actionDefault_Configuration.setObjectName(u"actionDefault_Configuration")
@@ -41,7 +41,7 @@ class Ui_mainWindow(object):
self.centralwidget.setObjectName(u"centralwidget")
self.horizontalLayoutWidget = QWidget(self.centralwidget)
self.horizontalLayoutWidget.setObjectName(u"horizontalLayoutWidget")
- self.horizontalLayoutWidget.setGeometry(QRect(10, 10, 1181, 741))
+ self.horizontalLayoutWidget.setGeometry(QRect(10, 10, 1181, 751))
self.horizontalLayout = QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setObjectName(u"horizontalLayout")
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
@@ -51,7 +51,7 @@ class Ui_mainWindow(object):
self.groupBox.setObjectName(u"groupBox")
self.verticalLayoutWidget_7 = QWidget(self.groupBox)
self.verticalLayoutWidget_7.setObjectName(u"verticalLayoutWidget_7")
- self.verticalLayoutWidget_7.setGeometry(QRect(10, 20, 274, 71))
+ self.verticalLayoutWidget_7.setGeometry(QRect(10, 20, 281, 51))
self.verticalLayout_8 = QVBoxLayout(self.verticalLayoutWidget_7)
self.verticalLayout_8.setObjectName(u"verticalLayout_8")
self.verticalLayout_8.setContentsMargins(0, 0, 0, 0)
@@ -277,128 +277,178 @@ class Ui_mainWindow(object):
self.groupBox_5.setObjectName(u"groupBox_5")
self.verticalLayoutWidget_3 = QWidget(self.groupBox_5)
self.verticalLayoutWidget_3.setObjectName(u"verticalLayoutWidget_3")
- self.verticalLayoutWidget_3.setGeometry(QRect(10, 20, 271, 91))
+ self.verticalLayoutWidget_3.setGeometry(QRect(10, 20, 281, 112))
self.verticalLayout_3 = QVBoxLayout(self.verticalLayoutWidget_3)
self.verticalLayout_3.setObjectName(u"verticalLayout_3")
self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_6 = QHBoxLayout()
self.horizontalLayout_6.setObjectName(u"horizontalLayout_6")
- self.label_24 = QLabel(self.verticalLayoutWidget_3)
- self.label_24.setObjectName(u"label_24")
- sizePolicy.setHeightForWidth(self.label_24.sizePolicy().hasHeightForWidth())
- self.label_24.setSizePolicy(sizePolicy)
- self.label_24.setMaximumSize(QSize(65, 16777215))
+ self.label_25 = QLabel(self.verticalLayoutWidget_3)
+ self.label_25.setObjectName(u"label_25")
+ sizePolicy.setHeightForWidth(self.label_25.sizePolicy().hasHeightForWidth())
+ self.label_25.setSizePolicy(sizePolicy)
+ self.label_25.setMaximumSize(QSize(65, 16777215))
- self.horizontalLayout_6.addWidget(self.label_24)
+ self.horizontalLayout_6.addWidget(self.label_25)
- self.spinBox_PSGPre = QSpinBox(self.verticalLayoutWidget_3)
- self.spinBox_PSGPre.setObjectName(u"spinBox_PSGPre")
- sizePolicy1.setHeightForWidth(self.spinBox_PSGPre.sizePolicy().hasHeightForWidth())
- self.spinBox_PSGPre.setSizePolicy(sizePolicy1)
- self.spinBox_PSGPre.setMinimumSize(QSize(60, 0))
- self.spinBox_PSGPre.setMaximumSize(QSize(100, 16777215))
- self.spinBox_PSGPre.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
- self.spinBox_PSGPre.setButtonSymbols(QAbstractSpinBox.NoButtons)
- self.spinBox_PSGPre.setMinimum(0)
- self.spinBox_PSGPre.setMaximum(1000)
- self.spinBox_PSGPre.setValue(0)
+ self.spinBox_PSGPreA = QSpinBox(self.verticalLayoutWidget_3)
+ self.spinBox_PSGPreA.setObjectName(u"spinBox_PSGPreA")
+ sizePolicy1.setHeightForWidth(self.spinBox_PSGPreA.sizePolicy().hasHeightForWidth())
+ self.spinBox_PSGPreA.setSizePolicy(sizePolicy1)
+ self.spinBox_PSGPreA.setMinimumSize(QSize(60, 0))
+ self.spinBox_PSGPreA.setMaximumSize(QSize(100, 16777215))
+ self.spinBox_PSGPreA.setToolTipDuration(2)
+ self.spinBox_PSGPreA.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
+ self.spinBox_PSGPreA.setButtonSymbols(QAbstractSpinBox.NoButtons)
+ self.spinBox_PSGPreA.setMinimum(0)
+ self.spinBox_PSGPreA.setMaximum(300000)
+ self.spinBox_PSGPreA.setValue(0)
- self.horizontalLayout_6.addWidget(self.spinBox_PSGPre)
+ self.horizontalLayout_6.addWidget(self.spinBox_PSGPreA)
- self.horizontalSpacer = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
+ self.horizontalSpacer_10 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
- self.horizontalLayout_6.addItem(self.horizontalSpacer)
+ self.horizontalLayout_6.addItem(self.horizontalSpacer_10)
- self.label_22 = QLabel(self.verticalLayoutWidget_3)
- self.label_22.setObjectName(u"label_22")
- sizePolicy.setHeightForWidth(self.label_22.sizePolicy().hasHeightForWidth())
- self.label_22.setSizePolicy(sizePolicy)
- self.label_22.setMaximumSize(QSize(72, 16777215))
-
- self.horizontalLayout_6.addWidget(self.label_22)
-
- self.spinBox_PSGAft = QSpinBox(self.verticalLayoutWidget_3)
- self.spinBox_PSGAft.setObjectName(u"spinBox_PSGAft")
- sizePolicy1.setHeightForWidth(self.spinBox_PSGAft.sizePolicy().hasHeightForWidth())
- self.spinBox_PSGAft.setSizePolicy(sizePolicy1)
- self.spinBox_PSGAft.setMinimumSize(QSize(60, 0))
- self.spinBox_PSGAft.setMaximumSize(QSize(100, 16777215))
- self.spinBox_PSGAft.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
- self.spinBox_PSGAft.setButtonSymbols(QAbstractSpinBox.NoButtons)
- self.spinBox_PSGAft.setMinimum(0)
- self.spinBox_PSGAft.setMaximum(1000)
- self.spinBox_PSGAft.setValue(0)
-
- self.horizontalLayout_6.addWidget(self.spinBox_PSGAft)
-
-
- self.verticalLayout_3.addLayout(self.horizontalLayout_6)
-
- self.horizontalLayout_7 = QHBoxLayout()
- self.horizontalLayout_7.setObjectName(u"horizontalLayout_7")
self.label_21 = QLabel(self.verticalLayoutWidget_3)
self.label_21.setObjectName(u"label_21")
sizePolicy.setHeightForWidth(self.label_21.sizePolicy().hasHeightForWidth())
self.label_21.setSizePolicy(sizePolicy)
self.label_21.setMaximumSize(QSize(65, 16777215))
- self.horizontalLayout_7.addWidget(self.label_21)
+ self.horizontalLayout_6.addWidget(self.label_21)
- self.spinBox_XXPre = QSpinBox(self.verticalLayoutWidget_3)
- self.spinBox_XXPre.setObjectName(u"spinBox_XXPre")
- sizePolicy1.setHeightForWidth(self.spinBox_XXPre.sizePolicy().hasHeightForWidth())
- self.spinBox_XXPre.setSizePolicy(sizePolicy1)
- self.spinBox_XXPre.setMinimumSize(QSize(60, 0))
- self.spinBox_XXPre.setMaximumSize(QSize(100, 16777215))
- self.spinBox_XXPre.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
- self.spinBox_XXPre.setButtonSymbols(QAbstractSpinBox.NoButtons)
- self.spinBox_XXPre.setMinimum(0)
- self.spinBox_XXPre.setMaximum(0)
- self.spinBox_XXPre.setValue(0)
+ self.spinBox_XXPreA = QSpinBox(self.verticalLayoutWidget_3)
+ self.spinBox_XXPreA.setObjectName(u"spinBox_XXPreA")
+ sizePolicy1.setHeightForWidth(self.spinBox_XXPreA.sizePolicy().hasHeightForWidth())
+ self.spinBox_XXPreA.setSizePolicy(sizePolicy1)
+ self.spinBox_XXPreA.setMinimumSize(QSize(60, 0))
+ self.spinBox_XXPreA.setMaximumSize(QSize(100, 16777215))
+ self.spinBox_XXPreA.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
+ self.spinBox_XXPreA.setButtonSymbols(QAbstractSpinBox.NoButtons)
+ self.spinBox_XXPreA.setMinimum(0)
+ self.spinBox_XXPreA.setMaximum(300000)
+ self.spinBox_XXPreA.setValue(0)
- self.horizontalLayout_7.addWidget(self.spinBox_XXPre)
+ self.horizontalLayout_6.addWidget(self.spinBox_XXPreA)
+
+
+ self.verticalLayout_3.addLayout(self.horizontalLayout_6)
+
+ self.horizontalLayout_2 = QHBoxLayout()
+ self.horizontalLayout_2.setObjectName(u"horizontalLayout_2")
+ self.label_24 = QLabel(self.verticalLayoutWidget_3)
+ self.label_24.setObjectName(u"label_24")
+ sizePolicy.setHeightForWidth(self.label_24.sizePolicy().hasHeightForWidth())
+ self.label_24.setSizePolicy(sizePolicy)
+ self.label_24.setMaximumSize(QSize(65, 16777215))
+
+ self.horizontalLayout_2.addWidget(self.label_24)
+
+ self.spinBox_PSGPreCut = QSpinBox(self.verticalLayoutWidget_3)
+ self.spinBox_PSGPreCut.setObjectName(u"spinBox_PSGPreCut")
+ sizePolicy4.setHeightForWidth(self.spinBox_PSGPreCut.sizePolicy().hasHeightForWidth())
+ self.spinBox_PSGPreCut.setSizePolicy(sizePolicy4)
+ self.spinBox_PSGPreCut.setMinimumSize(QSize(60, 0))
+ self.spinBox_PSGPreCut.setMaximumSize(QSize(100, 16777215))
+ self.spinBox_PSGPreCut.setToolTipDuration(2)
+ self.spinBox_PSGPreCut.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
+ self.spinBox_PSGPreCut.setButtonSymbols(QAbstractSpinBox.NoButtons)
+ self.spinBox_PSGPreCut.setMinimum(0)
+ self.spinBox_PSGPreCut.setMaximum(300000)
+ self.spinBox_PSGPreCut.setValue(0)
+
+ self.horizontalLayout_2.addWidget(self.spinBox_PSGPreCut)
self.horizontalSpacer_2 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
- self.horizontalLayout_7.addItem(self.horizontalSpacer_2)
+ self.horizontalLayout_2.addItem(self.horizontalSpacer_2)
+
+ self.label_26 = QLabel(self.verticalLayoutWidget_3)
+ self.label_26.setObjectName(u"label_26")
+ sizePolicy.setHeightForWidth(self.label_26.sizePolicy().hasHeightForWidth())
+ self.label_26.setSizePolicy(sizePolicy)
+ self.label_26.setMaximumSize(QSize(65, 16777215))
+
+ self.horizontalLayout_2.addWidget(self.label_26)
+
+ self.spinBox_XXPreCut = QSpinBox(self.verticalLayoutWidget_3)
+ self.spinBox_XXPreCut.setObjectName(u"spinBox_XXPreCut")
+ sizePolicy1.setHeightForWidth(self.spinBox_XXPreCut.sizePolicy().hasHeightForWidth())
+ self.spinBox_XXPreCut.setSizePolicy(sizePolicy1)
+ self.spinBox_XXPreCut.setMinimumSize(QSize(60, 0))
+ self.spinBox_XXPreCut.setMaximumSize(QSize(100, 16777215))
+ self.spinBox_XXPreCut.setToolTipDuration(2)
+ self.spinBox_XXPreCut.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
+ self.spinBox_XXPreCut.setButtonSymbols(QAbstractSpinBox.NoButtons)
+ self.spinBox_XXPreCut.setMinimum(0)
+ self.spinBox_XXPreCut.setMaximum(300000)
+ self.spinBox_XXPreCut.setValue(0)
+
+ self.horizontalLayout_2.addWidget(self.spinBox_XXPreCut)
+
+
+ self.verticalLayout_3.addLayout(self.horizontalLayout_2)
+
+ self.horizontalLayout_7 = QHBoxLayout()
+ self.horizontalLayout_7.setObjectName(u"horizontalLayout_7")
+ self.label_22 = QLabel(self.verticalLayoutWidget_3)
+ self.label_22.setObjectName(u"label_22")
+ sizePolicy.setHeightForWidth(self.label_22.sizePolicy().hasHeightForWidth())
+ self.label_22.setSizePolicy(sizePolicy)
+ self.label_22.setMaximumSize(QSize(65, 16777215))
+
+ self.horizontalLayout_7.addWidget(self.label_22)
+
+ self.spinBox_PSGPostCut = QSpinBox(self.verticalLayoutWidget_3)
+ self.spinBox_PSGPostCut.setObjectName(u"spinBox_PSGPostCut")
+ sizePolicy.setHeightForWidth(self.spinBox_PSGPostCut.sizePolicy().hasHeightForWidth())
+ self.spinBox_PSGPostCut.setSizePolicy(sizePolicy)
+ self.spinBox_PSGPostCut.setMinimumSize(QSize(60, 0))
+ self.spinBox_PSGPostCut.setMaximumSize(QSize(100, 16777215))
+ self.spinBox_PSGPostCut.setToolTipDuration(2)
+ self.spinBox_PSGPostCut.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
+ self.spinBox_PSGPostCut.setButtonSymbols(QAbstractSpinBox.NoButtons)
+ self.spinBox_PSGPostCut.setMinimum(0)
+ self.spinBox_PSGPostCut.setMaximum(300000)
+ self.spinBox_PSGPostCut.setValue(0)
+
+ self.horizontalLayout_7.addWidget(self.spinBox_PSGPostCut)
+
+ self.horizontalSpacer = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
+
+ self.horizontalLayout_7.addItem(self.horizontalSpacer)
self.label_23 = QLabel(self.verticalLayoutWidget_3)
self.label_23.setObjectName(u"label_23")
sizePolicy.setHeightForWidth(self.label_23.sizePolicy().hasHeightForWidth())
self.label_23.setSizePolicy(sizePolicy)
- self.label_23.setMaximumSize(QSize(72, 16777215))
+ self.label_23.setMaximumSize(QSize(65, 16777215))
self.horizontalLayout_7.addWidget(self.label_23)
- self.spinBox_XXAft = QSpinBox(self.verticalLayoutWidget_3)
- self.spinBox_XXAft.setObjectName(u"spinBox_XXAft")
- sizePolicy1.setHeightForWidth(self.spinBox_XXAft.sizePolicy().hasHeightForWidth())
- self.spinBox_XXAft.setSizePolicy(sizePolicy1)
- self.spinBox_XXAft.setMinimumSize(QSize(60, 0))
- self.spinBox_XXAft.setMaximumSize(QSize(60, 16777215))
- self.spinBox_XXAft.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
- self.spinBox_XXAft.setButtonSymbols(QAbstractSpinBox.NoButtons)
- self.spinBox_XXAft.setMinimum(0)
- self.spinBox_XXAft.setMaximum(1000)
- self.spinBox_XXAft.setValue(0)
+ self.spinBox_XXPostCut = QSpinBox(self.verticalLayoutWidget_3)
+ self.spinBox_XXPostCut.setObjectName(u"spinBox_XXPostCut")
+ sizePolicy.setHeightForWidth(self.spinBox_XXPostCut.sizePolicy().hasHeightForWidth())
+ self.spinBox_XXPostCut.setSizePolicy(sizePolicy)
+ self.spinBox_XXPostCut.setMinimumSize(QSize(60, 0))
+ self.spinBox_XXPostCut.setMaximumSize(QSize(100, 16777215))
+ self.spinBox_XXPostCut.setAlignment(Qt.AlignRight|Qt.AlignTrailing|Qt.AlignVCenter)
+ self.spinBox_XXPostCut.setButtonSymbols(QAbstractSpinBox.NoButtons)
+ self.spinBox_XXPostCut.setMinimum(0)
+ self.spinBox_XXPostCut.setMaximum(300000)
+ self.spinBox_XXPostCut.setValue(0)
- self.horizontalLayout_7.addWidget(self.spinBox_XXAft)
+ self.horizontalLayout_7.addWidget(self.spinBox_XXPostCut)
self.verticalLayout_3.addLayout(self.horizontalLayout_7)
self.horizontalLayout_8 = QHBoxLayout()
self.horizontalLayout_8.setObjectName(u"horizontalLayout_8")
- self.pushButton_GetPos = QPushButton(self.verticalLayoutWidget_3)
- self.pushButton_GetPos.setObjectName(u"pushButton_GetPos")
- sizePolicy1.setHeightForWidth(self.pushButton_GetPos.sizePolicy().hasHeightForWidth())
- self.pushButton_GetPos.setSizePolicy(sizePolicy1)
+ self.horizontalSpacer_8 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
- self.horizontalLayout_8.addWidget(self.pushButton_GetPos)
-
- self.horizontalSpacer_3 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
-
- self.horizontalLayout_8.addItem(self.horizontalSpacer_3)
+ self.horizontalLayout_8.addItem(self.horizontalSpacer_8)
self.pushButton_CutOff = QPushButton(self.verticalLayoutWidget_3)
self.pushButton_CutOff.setObjectName(u"pushButton_CutOff")
@@ -409,6 +459,21 @@ class Ui_mainWindow(object):
self.horizontalLayout_8.addWidget(self.pushButton_CutOff)
+ self.horizontalSpacer_3 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
+
+ self.horizontalLayout_8.addItem(self.horizontalSpacer_3)
+
+ self.pushButton_GetPos = QPushButton(self.verticalLayoutWidget_3)
+ self.pushButton_GetPos.setObjectName(u"pushButton_GetPos")
+ sizePolicy1.setHeightForWidth(self.pushButton_GetPos.sizePolicy().hasHeightForWidth())
+ self.pushButton_GetPos.setSizePolicy(sizePolicy1)
+
+ self.horizontalLayout_8.addWidget(self.pushButton_GetPos)
+
+ self.horizontalSpacer_9 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
+
+ self.horizontalLayout_8.addItem(self.horizontalSpacer_9)
+
self.verticalLayout_3.addLayout(self.horizontalLayout_8)
@@ -419,7 +484,7 @@ class Ui_mainWindow(object):
self.groupBox_4.setObjectName(u"groupBox_4")
self.verticalLayoutWidget_4 = QWidget(self.groupBox_4)
self.verticalLayoutWidget_4.setObjectName(u"verticalLayoutWidget_4")
- self.verticalLayoutWidget_4.setGeometry(QRect(10, 20, 271, 91))
+ self.verticalLayoutWidget_4.setGeometry(QRect(10, 20, 281, 91))
self.verticalLayout_4 = QVBoxLayout(self.verticalLayoutWidget_4)
self.verticalLayout_4.setObjectName(u"verticalLayout_4")
self.verticalLayout_4.setContentsMargins(0, 0, 0, 0)
@@ -510,7 +575,7 @@ class Ui_mainWindow(object):
self.groupBox_6.setObjectName(u"groupBox_6")
self.verticalLayoutWidget_5 = QWidget(self.groupBox_6)
self.verticalLayoutWidget_5.setObjectName(u"verticalLayoutWidget_5")
- self.verticalLayoutWidget_5.setGeometry(QRect(10, 20, 271, 92))
+ self.verticalLayoutWidget_5.setGeometry(QRect(10, 20, 281, 92))
self.verticalLayout_5 = QVBoxLayout(self.verticalLayoutWidget_5)
self.verticalLayout_5.setObjectName(u"verticalLayout_5")
self.verticalLayout_5.setContentsMargins(0, 0, 0, 0)
@@ -612,23 +677,20 @@ class Ui_mainWindow(object):
self.label_Info = QLabel(self.horizontalLayoutWidget)
self.label_Info.setObjectName(u"label_Info")
+ self.label_Info.setMaximumSize(QSize(16777215, 20))
self.verticalLayout_6.addWidget(self.label_Info)
- self.verticalSpacer = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding)
-
- self.verticalLayout_6.addItem(self.verticalSpacer)
-
self.verticalLayout.addLayout(self.verticalLayout_6)
self.verticalLayout.setStretch(0, 3)
self.verticalLayout.setStretch(1, 4)
- self.verticalLayout.setStretch(2, 4)
+ self.verticalLayout.setStretch(2, 5)
self.verticalLayout.setStretch(3, 4)
self.verticalLayout.setStretch(4, 4)
self.verticalLayout.setStretch(5, 2)
- self.verticalLayout.setStretch(6, 3)
+ self.verticalLayout.setStretch(6, 2)
self.horizontalLayout.addLayout(self.verticalLayout)
@@ -641,26 +703,14 @@ class Ui_mainWindow(object):
self.verticalLayout_9 = QVBoxLayout()
self.verticalLayout_9.setObjectName(u"verticalLayout_9")
- self.label_SPic = QLabel(self.horizontalLayoutWidget)
- self.label_SPic.setObjectName(u"label_SPic")
- self.label_SPic.setMaximumSize(QSize(16777215, 100))
-
- self.verticalLayout_9.addWidget(self.label_SPic)
-
- self.line_2 = QFrame(self.horizontalLayoutWidget)
- self.line_2.setObjectName(u"line_2")
- self.line_2.setFrameShape(QFrame.HLine)
- self.line_2.setFrameShadow(QFrame.Sunken)
-
- self.verticalLayout_9.addWidget(self.line_2)
-
self.label_Pic = QLabel(self.horizontalLayoutWidget)
self.label_Pic.setObjectName(u"label_Pic")
+ self.label_Pic.setMinimumSize(QSize(860, 700))
+ self.label_Pic.setMaximumSize(QSize(860, 700))
self.verticalLayout_9.addWidget(self.label_Pic)
- self.verticalLayout_9.setStretch(0, 2)
- self.verticalLayout_9.setStretch(2, 6)
+ self.verticalLayout_9.setStretch(0, 6)
self.horizontalLayout.addLayout(self.verticalLayout_9)
@@ -709,12 +759,42 @@ class Ui_mainWindow(object):
self.checkBox_XXZScore.setText(QCoreApplication.translate("mainWindow", u"\u5fc3\u6653\u6807\u51c6\u5316", None))
self.pushButton_Standardize.setText(QCoreApplication.translate("mainWindow", u"\u5e94\u7528", None))
self.groupBox_5.setTitle(QCoreApplication.translate("mainWindow", u"\u622a\u65ad", None))
- self.label_24.setText(QCoreApplication.translate("mainWindow", u"PSG_PRE:", None))
- self.label_22.setText(QCoreApplication.translate("mainWindow", u"PSG_AFT", None))
- self.label_21.setText(QCoreApplication.translate("mainWindow", u"\u5fc3\u6653_PRE:", None))
- self.label_23.setText(QCoreApplication.translate("mainWindow", u"\u5fc3\u6653_AFT", None))
- self.pushButton_GetPos.setText(QCoreApplication.translate("mainWindow", u"\u83b7\u53d6\u5bf9\u9f50\u4f4d\u7f6e", None))
+#if QT_CONFIG(tooltip)
+ self.label_25.setToolTip("")
+#endif // QT_CONFIG(tooltip)
+ self.label_25.setText(QCoreApplication.translate("mainWindow", u"PSG_\u8865\u96f6:", None))
+#if QT_CONFIG(tooltip)
+ self.spinBox_PSGPreA.setToolTip(QCoreApplication.translate("mainWindow", u"\u8d1f\u6570\u5219\u8865\u96f6", None))
+#endif // QT_CONFIG(tooltip)
+ self.spinBox_PSGPreA.setPrefix("")
+#if QT_CONFIG(tooltip)
+ self.label_21.setToolTip("")
+#endif // QT_CONFIG(tooltip)
+ self.label_21.setText(QCoreApplication.translate("mainWindow", u"\u5fc3\u6653_\u8865\u96f6:", None))
+#if QT_CONFIG(tooltip)
+ self.label_24.setToolTip("")
+#endif // QT_CONFIG(tooltip)
+ self.label_24.setText(QCoreApplication.translate("mainWindow", u"PSG_Pre :", None))
+#if QT_CONFIG(tooltip)
+ self.spinBox_PSGPreCut.setToolTip(QCoreApplication.translate("mainWindow", u"\u8d1f\u6570\u5219\u8865\u96f6", None))
+#endif // QT_CONFIG(tooltip)
+ self.spinBox_PSGPreCut.setPrefix("")
+#if QT_CONFIG(tooltip)
+ self.label_26.setToolTip("")
+#endif // QT_CONFIG(tooltip)
+ self.label_26.setText(QCoreApplication.translate("mainWindow", u"\u5fc3\u6653_Pre:", None))
+#if QT_CONFIG(tooltip)
+ self.spinBox_XXPreCut.setToolTip(QCoreApplication.translate("mainWindow", u"\u8d1f\u6570\u5219\u8865\u96f6", None))
+#endif // QT_CONFIG(tooltip)
+ self.spinBox_XXPreCut.setPrefix("")
+ self.label_22.setText(QCoreApplication.translate("mainWindow", u"PSG_Post:", None))
+#if QT_CONFIG(tooltip)
+ self.spinBox_PSGPostCut.setToolTip(QCoreApplication.translate("mainWindow", u"\u8d1f\u6570\u5219\u8865\u96f6", None))
+#endif // QT_CONFIG(tooltip)
+ self.spinBox_PSGPostCut.setPrefix("")
+ self.label_23.setText(QCoreApplication.translate("mainWindow", u"\u5fc3\u6653_Post:", None))
self.pushButton_CutOff.setText(QCoreApplication.translate("mainWindow", u"\u5e94\u7528", None))
+ self.pushButton_GetPos.setText(QCoreApplication.translate("mainWindow", u"\u83b7\u53d6\u5bf9\u9f50\u4f4d\u7f6e", None))
self.groupBox_4.setTitle(QCoreApplication.translate("mainWindow", u"\u5bf9\u9f50\u8d77\u59cb\u4f4d\u7f6e", None))
self.checkBox_PTHO.setText(QCoreApplication.translate("mainWindow", u"\u5907\u90091", None))
self.checkBox_NTHO.setText(QCoreApplication.translate("mainWindow", u"\u5907\u90092", None))
@@ -737,7 +817,6 @@ class Ui_mainWindow(object):
self.pushButton_SaveInfo.setText(QCoreApplication.translate("mainWindow", u"\u4fdd\u5b58\u53c2\u6570", None))
self.pushButton_Exit.setText(QCoreApplication.translate("mainWindow", u"\u9000\u51fa", None))
self.label_Info.setText(QCoreApplication.translate("mainWindow", u"Info", None))
- self.label_SPic.setText(QCoreApplication.translate("mainWindow", u"TextLabel", None))
self.label_Pic.setText(QCoreApplication.translate("mainWindow", u"TextLabel", None))
self.menu.setTitle(QCoreApplication.translate("mainWindow", u"\u9ed8\u8ba4\u8bbe\u7f6e", None))
# retranslateUi
diff --git a/ui/Mian.ui b/ui/Mian.ui
index 5020de6..d192b4b 100644
--- a/ui/Mian.ui
+++ b/ui/Mian.ui
@@ -24,8 +24,8 @@
- 1920
- 1080
+ 1200
+ 800
@@ -44,12 +44,12 @@
10
10
1181
- 741
+ 751
-
-
+
-
@@ -60,8 +60,8 @@
10
20
- 274
- 71
+ 281
+ 51
@@ -492,15 +492,15 @@
10
20
- 271
- 91
+ 281
+ 112
-
-
-
+
0
@@ -513,13 +513,16 @@
16777215
+
+
+
- PSG_PRE:
+ PSG_补零:
-
-
+
0
@@ -538,17 +541,26 @@
16777215
+
+ 负数则补零
+
+
+ 2
+
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
QAbstractSpinBox::NoButtons
+
+
+
0
- 1000
+ 300000
0
@@ -556,7 +568,7 @@
-
-
+
Qt::Horizontal
@@ -568,66 +580,6 @@
- -
-
-
-
- 0
- 0
-
-
-
-
- 72
- 16777215
-
-
-
- PSG_AFT
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 60
- 0
-
-
-
-
- 100
- 16777215
-
-
-
- Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
-
- QAbstractSpinBox::NoButtons
-
-
- 0
-
-
- 1000
-
-
- 0
-
-
-
-
-
- -
-
-
@@ -642,13 +594,16 @@
16777215
+
+
+
- 心晓_PRE:
+ 心晓_补零:
-
-
+
0
@@ -677,8 +632,80 @@
0
+ 300000
+
+
0
+
+
+
+
+ -
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 65
+ 16777215
+
+
+
+
+
+
+ PSG_Pre :
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 60
+ 0
+
+
+
+
+ 100
+ 16777215
+
+
+
+ 负数则补零
+
+
+ 2
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+ QAbstractSpinBox::NoButtons
+
+
+
+
+
+ 0
+
+
+ 300000
+
0
@@ -697,6 +724,156 @@
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 65
+ 16777215
+
+
+
+
+
+
+ 心晓_Pre:
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 60
+ 0
+
+
+
+
+ 100
+ 16777215
+
+
+
+ 负数则补零
+
+
+ 2
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+ QAbstractSpinBox::NoButtons
+
+
+
+
+
+ 0
+
+
+ 300000
+
+
+ 0
+
+
+
+
+
+ -
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 65
+ 16777215
+
+
+
+ PSG_Post:
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 60
+ 0
+
+
+
+
+ 100
+ 16777215
+
+
+
+ 负数则补零
+
+
+ 2
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+ QAbstractSpinBox::NoButtons
+
+
+
+
+
+ 0
+
+
+ 300000
+
+
+ 0
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
-
@@ -707,19 +884,19 @@
- 72
+ 65
16777215
- 心晓_AFT
+ 心晓_Post:
-
-
+
-
+
0
0
@@ -732,7 +909,7 @@
- 60
+ 100
16777215
@@ -746,7 +923,7 @@
0
- 1000
+ 300000
0
@@ -758,20 +935,7 @@
-
-
-
-
-
- 0
- 0
-
-
-
- 获取对齐位置
-
-
-
- -
-
+
Qt::Horizontal
@@ -808,6 +972,45 @@
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ 获取对齐位置
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+
+ 40
+ 20
+
+
+
+
@@ -824,7 +1027,7 @@
10
20
- 271
+ 281
91
@@ -973,7 +1176,7 @@
10
20
- 271
+ 281
92
@@ -1150,24 +1353,17 @@
-
+
+
+ 16777215
+ 20
+
+
Info
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
@@ -1180,29 +1376,21 @@
-
-
-
-
-
-
-
- 16777215
- 100
-
-
-
- TextLabel
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
+
-
+
+
+ 860
+ 700
+
+
+
+
+ 860
+ 700
+
+
TextLabel