Update meshes.py

This commit is contained in:
Jeffreytsai1004 2025-02-11 00:58:40 +08:00
parent a2f7e25184
commit 1b2bc2aeed

View File

@ -164,7 +164,7 @@ class MeshesTab(QtWidgets.QWidget):
content = QtWidgets.QWidget()
content_layout = QtWidgets.QVBoxLayout(content)
content_layout.setContentsMargins(0, 0, 0, 0)
content_layout.setSpacing(2) # 调整项目间距
content_layout.setSpacing(0) # 将项目间距改为0
# 创建网格项
meshes = config.LOD_MESHES[f"LOD{lod_index}"]
@ -186,6 +186,10 @@ class MeshesTab(QtWidgets.QWidget):
group_btn = self._create_tool_button("自动分组", "automatic_groupingg.png", "menuIconEdit.png")
delete_btn = self._create_tool_button("清理", "delete.png", "delete.png")
# 统一按钮高度
for btn in [load_btn, standardize_btn, group_btn, delete_btn]:
btn.setFixedHeight(32) # 设置为与模型分离按钮相同的高度
# 创建按钮容器
button_container = QtWidgets.QWidget()
container_layout = QtWidgets.QHBoxLayout(button_container)
@ -223,77 +227,82 @@ class MeshesTab(QtWidgets.QWidget):
"""创建网格项"""
item = QtWidgets.QWidget()
layout = QtWidgets.QHBoxLayout(item)
layout.setContentsMargins(4, 1, 4, 1) # 减小上下边距
layout.setSpacing(4) # 保持主布局间距
layout.setContentsMargins(4, 0, 4, 0) # 移除上下边距
layout.setSpacing(4)
# 设置item的最小高度确保内容完整显示
item.setMinimumHeight(40)
# 左侧容器(标签和输入框)
left_container = QtWidgets.QWidget()
left_layout = QtWidgets.QHBoxLayout(left_container)
left_layout.setContentsMargins(0, 0, 0, 0)
left_layout.setSpacing(1) # 将标签和输入框的间距减到最小
left_layout.setSpacing(1)
# 网格名称标签
name_label = QtWidgets.QLabel(mesh_name)
name_label.setFixedWidth(60) # 调整标签宽度
name_label.setAlignment(QtCore.Qt.AlignLeft | QtCore.Qt.AlignVCenter) # 保持左对齐
name_label = QtWidgets.QLabel(mesh_name + ":") # 添加冒号
name_label.setFixedWidth(50) # 减小标签宽度
name_label.setAlignment(QtCore.Qt.AlignLeft | QtCore.Qt.AlignVCenter)
name_label.setStyleSheet("""
QLabel {
color: #CCCCCC;
padding-right: 0px;
}
""")
# 网格路径输入框 - 可编辑
# 网格路径输入框
path_edit = QtWidgets.QLineEdit()
path_edit.setPlaceholderText("输入或选择模型路径...")
path_edit.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed)
path_edit.setFixedHeight(24)
path_edit.setStyleSheet("""
QLineEdit {
background: #1d1d1d;
border: 2px solid #444444; /* 调整边框颜色 */
border-radius: 5px; /* 减小圆角 */
padding: 2px 4px;
color: #CCCCCC;
}
QLineEdit:hover {
border: 1px solid #555555;
}
QLineEdit:focus {
border: 1px solid #666666;
background: #2A2A2A;
}
""")
left_layout.addWidget(name_label)
left_layout.addWidget(path_edit)
# 添加按钮(右对齐)
add_btn = QtWidgets.QPushButton()
add_btn.setIcon(QtGui.QIcon(":fileOpen.png"))
# 按钮
add_btn = QtWidgets.QPushButton("加载...")
add_btn.setIcon(QtGui.QIcon(f"{config.ICONS_PATH}/target.png"))
add_btn.setToolTip("浏览...")
add_btn.setFixedSize(22, 22)
add_btn.setFixedSize(100, 24)
add_btn.setStyleSheet("""
QPushButton {
background: #232323;
border: 2px solid #444444; /* 调整边框颜色 */
border-radius: 5px; /* 减小圆角 */
padding: 2px 4px;
color: #CCCCCC;
text-align: center; /* 居中对齐 */
}
QPushButton:hover {
background: #454545;
border: 1px solid #555555;
}
QPushButton:pressed {
background: #2A2A2A;
border: 1px solid #666666;
}
""")
# 添加到主布局
layout.addWidget(left_container, stretch=1)
layout.addWidget(add_btn)
# 设置样式
item.setStyleSheet("""
QWidget {
background: #2D2D2D;
}
QLabel {
color: #CCCCCC;
font-size: 12px;
padding-right: 0px; # 移除标签右边距
}
QLineEdit {
background: #3D3D3D;
border: 1px solid #555555;
border-radius: 2px;
padding: 2px 4px;
color: #CCCCCC;
min-height: 22px;
}
QLineEdit:hover {
border: 1px solid #666666;
}
QLineEdit:focus {
border: 1px solid #777777;
background: #404040;
}
QPushButton {
background: #3D3D3D;
border: 1px solid #555555;
border-radius: 2px;
padding: 2px;
}
QPushButton:hover {
background: #454545;
}
QPushButton:pressed {
background: #2A2A2A;
}
""")
return item
def _create_tool_button(self, text, icon_name, fallback_icon=None):
@ -355,17 +364,20 @@ class MeshesTab(QtWidgets.QWidget):
self.preset_name_combo = QtWidgets.QComboBox()
self.preset_name_combo.addItem("Meta-Human")
self.preset_name_combo.setFixedWidth(150)
self.preset_name_combo.setFixedHeight(32) # 设置为与模型分离按钮相同的高度
# 选择LOD
self.lod_label = QtWidgets.QLabel("选择LOD:")
self.lod_combo = QtWidgets.QComboBox()
self.lod_combo.addItems(["全部"] + [f"LOD{i}" for i in range(8)])
self.lod_combo.setFixedWidth(100)
self.lod_combo.setFixedHeight(32) # 设置为与模型分离按钮相同的高度
# 创建LOD按钮
self.create_lod_btn = QtWidgets.QPushButton()
self.create_lod_btn.setIcon(QtGui.QIcon(f"{config.ICONS_PATH}/create_lod.png"))
self.create_lod_btn.setText("生成当前LOD")
self.create_lod_btn.setText("创建LOD")
self.create_lod_btn.setFixedHeight(32) # 设置为与模型分离按钮相同的高度
first_layout.addWidget(self.preset_label)
first_layout.addWidget(self.preset_name_combo)