mirror of
https://github.com/goldenfishs/MRobot.git
synced 2026-02-04 18:00:19 +08:00
2.4 KiB
2.4 KiB
财务界面 UI 改进总结
修改内容
1. 统一使用 qfluentwidgets 组件
标签控件替换
- 旧: QTabWidget + QLabel
- 新: SegmentedWidget + BodyLabel/StrongBodyLabel
消息提示替换
- 旧: QMessageBox
- 新: InfoBar/Dialog (qfluentwidgets)
其他组件替换
- QLabel → BodyLabel / StrongBodyLabel
- QTableWidget 保留,但添加 qfluentwidgets 样式
2. 功能选择改进
使用 SegmentedWidget 替代 TabBar:
self.segmented_widget = SegmentedWidget()
self.segmented_widget.insertItem(0, "bookkeeping", "做账")
self.segmented_widget.insertItem(1, "query", "查询")
self.segmented_widget.insertItem(2, "export", "导出")
self.segmented_widget.currentItemChanged.connect(self.on_tab_changed)
3. 表格优化
做账标签页表格
- 列数: 5 (日期, 交易人, 金额, 备注, 操作)
- 样式: 交替行颜色、自动调整列宽
- 操作按钮: 查看、编辑、删除
查询标签页
- 搜索过滤使用 CardWidget 包装
- 表格显示查询结果
- 操作按钮: 查看详情
统计信息
- 使用 CardWidget 显示总额和记录数
- 使用 StrongBodyLabel 强调显示
4. 对话框改进
CreateTransactionDialog
- 使用 BodyLabel 替代 QLabel
- 保持现有布局和功能
RecordViewDialog
- 图片预览使用 BodyLabel
- 支持图片显示
5. 消息提示改进
所有确认/警告/错误消息使用 InfoBar 或 Dialog:
InfoBar.success(
title="成功",
content="记录已添加",
isClosable=True,
position=InfoBarPosition.TOP,
duration=2000,
parent=self
)
删除确认使用 Dialog:
dialog = Dialog(
title="确认删除",
content="确定要删除这条记录吗?",
parent=self
)
测试结果
✅ 所有 UI 组件验证通过
✅ SegmentedWidget 正常工作
✅ TableWidget 正常工作
✅ 标签页切换功能正常
文件修改
/Users/lvzucheng/Documents/R/MRobot/app/finance_interface.py- 主要修改- 导入调整
- UI 组件替换
- 样式优化
- 消息提示更新
兼容性
- PyQt5 ✓
- qfluentwidgets >= 0.10.0 ✓
- Python >= 3.7 ✓
后续建议
- 可考虑添加更多的快捷操作按钮
- 可以为表格添加上下文菜单
- 可以优化查询过滤的交互体验
- 可以添加数据导出的进度条显示