[bugfix] 新增lineEdit值范围限制
This commit is contained in:
parent
c2995b4899
commit
8e77e3752b
Binary file not shown.
@ -2,7 +2,7 @@ from PySide6.QtWidgets import (QWidget, QDialog, QVBoxLayout, QComboBox, QPushBu
|
||||
QLabel, QTableWidgetItem, QAbstractScrollArea, QHBoxLayout,
|
||||
QStyledItemDelegate, QCheckBox, QHeaderView, QSlider)
|
||||
from PySide6.QtCore import Qt, Signal, QEvent
|
||||
from PySide6.QtGui import QPainter, QColor, QPen, QBrush, QPainterPath, QIcon, QPixmap
|
||||
from PySide6.QtGui import QPainter, QColor, QPen, QBrush, QPainterPath, QIcon, QPixmap, QDoubleValidator
|
||||
from PySide6.QtCore import QFile
|
||||
|
||||
import sys
|
||||
@ -169,6 +169,24 @@ class AudioFilterWidget(QWidget):
|
||||
self.ui = Ui_Widget()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# 添加验证器限制输入范围为0-20
|
||||
validator = QDoubleValidator(0, 20, 2)
|
||||
validator.setNotation(QDoubleValidator.StandardNotation)
|
||||
self.ui.lineEdit_11.setValidator(validator)
|
||||
self.ui.lineEdit_11.textChanged.connect(lambda text: self._validate_input(self.ui.lineEdit_11, 0, 20))
|
||||
|
||||
# 添加验证器限制输入范围为-99到12
|
||||
volume_validator = QDoubleValidator(-99, 12, 2)
|
||||
volume_validator.setNotation(QDoubleValidator.StandardNotation)
|
||||
self.ui.lineEdit_10.setValidator(volume_validator)
|
||||
self.ui.lineEdit_10.textChanged.connect(lambda text: self._validate_input(self.ui.lineEdit_10, -99, 12))
|
||||
|
||||
# 添加验证器限制输入范围为-99到12
|
||||
volume_validator = QDoubleValidator(0, 1, 2) # 参数为(最小值, 最大值, 小数位数)
|
||||
volume_validator.setNotation(QDoubleValidator.StandardNotation)
|
||||
self.ui.lineEdit_12.setValidator(volume_validator)
|
||||
self.ui.lineEdit_13.setValidator(volume_validator)
|
||||
|
||||
# 添加slope的固定刻度值
|
||||
self.slope_values = [6, 12, 18, 24, 30, 36]
|
||||
|
||||
@ -1369,6 +1387,21 @@ class AudioFilterWidget(QWidget):
|
||||
self.ui.verticalSlider_3.setValue(0)
|
||||
self.ui.verticalSlider_4.setValue(0)
|
||||
|
||||
def _validate_input(self, line_edit, min_val, max_val):
|
||||
"""验证并限制输入值在指定范围内"""
|
||||
try:
|
||||
if not line_edit.text():
|
||||
return
|
||||
|
||||
value = float(line_edit.text())
|
||||
if value > max_val:
|
||||
line_edit.setText(str(max_val))
|
||||
elif value < min_val:
|
||||
line_edit.setText(str(min_val))
|
||||
except ValueError:
|
||||
# 如果转换失败(非数字输入),保留原值
|
||||
pass
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
@ -2,8 +2,8 @@ parameter,value
|
||||
dataset.audio_mode,0
|
||||
dataset.send_action,0
|
||||
dataset.tuning_parameters.mix_parameters[0].ch_n,0
|
||||
dataset.tuning_parameters.mix_parameters[0].mix_left_data,1.0
|
||||
dataset.tuning_parameters.mix_parameters[0].mix_right_data,1.0
|
||||
dataset.tuning_parameters.mix_parameters[0].mix_left_data,0.1
|
||||
dataset.tuning_parameters.mix_parameters[0].mix_right_data,1
|
||||
dataset.tuning_parameters.mix_parameters[1].ch_n,1
|
||||
dataset.tuning_parameters.mix_parameters[1].mix_left_data,0.0
|
||||
dataset.tuning_parameters.mix_parameters[1].mix_right_data,0.0
|
||||
@ -872,7 +872,7 @@ dataset.tuning_parameters.delay_parameters[4].delay_data,0.0
|
||||
dataset.tuning_parameters.delay_parameters[5].ch_n,5
|
||||
dataset.tuning_parameters.delay_parameters[5].delay_data,0.0
|
||||
dataset.tuning_parameters.volume_parameters[0].ch_n,0
|
||||
dataset.tuning_parameters.volume_parameters[0].vol_data,10.0
|
||||
dataset.tuning_parameters.volume_parameters[0].vol_data,12
|
||||
dataset.tuning_parameters.volume_parameters[1].ch_n,1
|
||||
dataset.tuning_parameters.volume_parameters[1].vol_data,0.0
|
||||
dataset.tuning_parameters.volume_parameters[2].ch_n,2
|
||||
|
|
Loading…
Reference in New Issue
Block a user