This commit is contained in:
Jeffreytsai1004 2025-02-10 04:08:00 +08:00
parent a274217da5
commit 9f91ea8e56
2 changed files with 47 additions and 35 deletions

View File

@ -323,7 +323,7 @@ Reference\UI\17_Definitions.jpg
- 搜索过滤 - 搜索过滤
- BlendShape列表 - BlendShape列表
- 恢复表情按钮;- 混合筛选按钮 - 恢复表情按钮icons\restore.png- 混合筛选按钮icons\blendRaw.png
- 全部按钮2按钮3按钮4按钮5按钮6按钮 - 全部按钮2按钮3按钮4按钮5按钮6按钮
- 范围控制0.010),滑块,勾选框(未勾选), 文字"全部" - 范围控制0.010),滑块,勾选框(未勾选), 文字"全部"
- 范围+按钮,范围-按钮 - 范围+按钮,范围-按钮
@ -332,18 +332,18 @@ Reference\UI\17_Definitions.jpg
- 关联BlendShape列表 - 关联BlendShape列表
- 范围控制0.000),滑块,勾选框(未勾选), 文字"全部" - 范围控制0.000),滑块,勾选框(未勾选), 文字"全部"
- 翻转目标 - 镜像目标 - 查找翻转目标 - 翻转目标icons\flip.png - 镜像目标icons\mirror.png - 查找翻转目标icons\mirrorR.png
- 添加混合目标 - 删除混合目标 - 批量混合目标 - 添加混合目标:locator.png - 删除混合目标icons\delete.png - 批量混合目标icons\batch.png
- 重建混合目标 - 重建所有混合目标 - 重建混合目标:locator.png - 重建所有混合目标icons\rebuildAll.png
- 范围控制0.010),滑块,勾选框(未勾选), 文字"全部" - 范围控制0.010),滑块,勾选框(未勾选), 文字"全部"
- 范围+按钮,范围-按钮 - 范围+按钮,范围-按钮
####### 功能按钮 ####### 功能按钮(在行为视图的底部)
- 第一行 PSD - BSE - KEY - MIR - ARK - CTR - 第一行 PSD - BSE - KEY - MIR - ARK - CTR
- 第二行 范围控制0.000),滑块,"+"按钮, 勾选框(未勾选), 文字"全部" - 第二行 范围控制0.000),滑块,"+"按钮, 勾选框(未勾选), 文字"全部"
- 第三行 按钮:还原默认表情;查找选择表情;写入当前表情 - 第三行 按钮:还原默认表情icons\rest.png;查找选择表情icons\expressions_current.png;写入当前表情icons\expression.png
- 第四行 按钮:控制面板查找;选择关联关节;写入镜像表情 - 第四行 按钮:控制面板查找icons\controller.png;选择关联关节icons\kinjoint.png;写入镜像表情icons\ctrl_hide.png
###### 4. 定义视图 (Definition) ###### 4. 定义视图 (Definition)

View File

@ -242,28 +242,24 @@ class BehaviourTab(QtWidgets.QWidget):
# === 底部功能区域 === # === 底部功能区域 ===
self.bottom_widget = QtWidgets.QWidget() self.bottom_widget = QtWidgets.QWidget()
self.bottom_layout = QtWidgets.QVBoxLayout(self.bottom_widget) self.bottom_layout = QtWidgets.QVBoxLayout(self.bottom_widget)
self.bottom_layout.setContentsMargins(4, 0, 4, 0) self.bottom_layout.setContentsMargins(4, 6, 4, 6)
self.bottom_layout.setSpacing(0) self.bottom_layout.setSpacing(4)
# 设置底部功能区的固定高度 # 设置底部功能区的固定高度
self.bottom_widget.setFixedHeight(88) self.bottom_widget.setFixedHeight(140) # 继续增加高度
# 先创建所有控件 # 先创建第二行需要的控件
# 创建SpinBox
self.bottom_spin = QtWidgets.QDoubleSpinBox() self.bottom_spin = QtWidgets.QDoubleSpinBox()
self.bottom_spin.setValue(0.000) self.bottom_spin.setValue(0.000)
self.bottom_spin.setDecimals(3) self.bottom_spin.setDecimals(3)
self.bottom_spin.setFixedWidth(60) self.bottom_spin.setFixedWidth(60)
self.bottom_spin.setFixedHeight(20) self.bottom_spin.setFixedHeight(24)
# 创建Slider
self.bottom_slider = QtWidgets.QSlider(QtCore.Qt.Horizontal) self.bottom_slider = QtWidgets.QSlider(QtCore.Qt.Horizontal)
self.bottom_slider.setRange(0, 100) self.bottom_slider.setRange(0, 100)
self.bottom_slider.setValue(0) self.bottom_slider.setValue(0)
self.bottom_slider.setFixedHeight(16) self.bottom_slider.setFixedHeight(16)
self.bottom_slider.setStyleSheet("""
# 设置滑块样式
slider_style = """
QSlider::groove:horizontal { QSlider::groove:horizontal {
height: 3px; height: 3px;
margin: 0px; margin: 0px;
@ -273,31 +269,38 @@ class BehaviourTab(QtWidgets.QWidget):
height: 8px; height: 8px;
margin: -3px 0; margin: -3px 0;
} }
""" """)
self.bottom_slider.setStyleSheet(slider_style)
# 然后创建功能按钮区域 # 然后创建四行的容器
for i in range(1, 5): for i in range(1, 5):
widget_name = f'func_widget{i}' widget_name = f'func_widget{i}'
layout_name = f'func_layout{i}' layout_name = f'func_layout{i}'
widget = QtWidgets.QWidget() widget = QtWidgets.QWidget()
widget.setFixedHeight(22) widget.setFixedHeight(28) # 继续增加每行高度
layout = QtWidgets.QHBoxLayout(widget) layout = QtWidgets.QHBoxLayout(widget)
layout.setContentsMargins(0, 0, 0, 0) layout.setContentsMargins(0, 0, 0, 0)
layout.setSpacing(2) layout.setSpacing(4)
setattr(self, widget_name, widget) setattr(self, widget_name, widget)
setattr(self, layout_name, layout) setattr(self, layout_name, layout)
# 调整所有按钮高度 # 调整按钮高度
for btn in self.findChildren(QtWidgets.QPushButton): for btn in self.findChildren(QtWidgets.QPushButton):
btn.setFixedHeight(20) btn.setFixedHeight(24) # 增加按钮高度
# 功能按钮 - 第一行 # 功能按钮 - 第一行
for text in ["PSD", "BSE", "KEY", "MIR", "ARK", "CTR"]: for text, icon in [
("PSD", ":positionConstraint.png"),
("BSE", ":blendShape.png"),
("KEY", ":key.png"),
("MIR", ":mirrorCurve.png"),
("ARK", ":arcLengthDimension.png"),
("CTR", ":control.png")
]:
btn = QtWidgets.QPushButton(text) btn = QtWidgets.QPushButton(text)
btn.setIcon(QtGui.QIcon(icon))
btn.setFixedWidth(40) btn.setFixedWidth(40)
self.func_layout1.addWidget(btn) self.func_layout1.addWidget(btn)
self.func_layout1.addStretch() self.func_layout1.addStretch()
@ -315,22 +318,31 @@ class BehaviourTab(QtWidgets.QWidget):
self.func_layout2.addWidget(bottom_check) self.func_layout2.addWidget(bottom_check)
self.func_layout2.addWidget(bottom_label) self.func_layout2.addWidget(bottom_label)
# 功能按钮 - 第三行和第四行使用更紧凑的布局 # 功能按钮 - 第三行
self.restore_default_btn = QtWidgets.QPushButton("还原默认表情") self.restore_default_btn = QtWidgets.QPushButton("还原默认表情")
self.restore_default_btn.setIcon(QtGui.QIcon(":reset.png"))
self.func_layout3.addWidget(self.restore_default_btn)
self.find_select_btn = QtWidgets.QPushButton("查找选择表情") self.find_select_btn = QtWidgets.QPushButton("查找选择表情")
self.find_select_btn.setIcon(QtGui.QIcon(":find.png"))
self.func_layout3.addWidget(self.find_select_btn)
self.write_current_btn = QtWidgets.QPushButton("写入当前表情") self.write_current_btn = QtWidgets.QPushButton("写入当前表情")
self.write_current_btn.setIcon(QtGui.QIcon(":save.png"))
self.func_layout3.addWidget(self.write_current_btn)
for btn in [self.restore_default_btn, self.find_select_btn, self.write_current_btn]: # 功能按钮 - 第四行
btn.setFixedHeight(24)
self.func_layout3.addWidget(btn)
self.find_panel_btn = QtWidgets.QPushButton("控制面板查找") self.find_panel_btn = QtWidgets.QPushButton("控制面板查找")
self.select_joint_btn = QtWidgets.QPushButton("选择关联关节") self.find_panel_btn.setIcon(QtGui.QIcon(":menuIconWindow.png"))
self.write_mirror_btn = QtWidgets.QPushButton("写入镜像表情") self.func_layout4.addWidget(self.find_panel_btn)
for btn in [self.find_panel_btn, self.select_joint_btn, self.write_mirror_btn]: self.select_joint_btn = QtWidgets.QPushButton("选择关联关节")
btn.setFixedHeight(24) self.select_joint_btn.setIcon(QtGui.QIcon(":kinJoint.png"))
self.func_layout4.addWidget(btn) self.func_layout4.addWidget(self.select_joint_btn)
self.write_mirror_btn = QtWidgets.QPushButton("写入镜像表情")
self.write_mirror_btn.setIcon(QtGui.QIcon(":mirrorSkinWeight.png"))
self.func_layout4.addWidget(self.write_mirror_btn)
# 添加到底部布局 # 添加到底部布局
self.bottom_layout.addWidget(self.func_widget1) self.bottom_layout.addWidget(self.func_widget1)