# ShortVideoClient **Repository Path**: absolutely-stunning/ShortVideoClient ## Basic Information - **Project Name**: ShortVideoClient - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 109 - **Created**: 2026-06-08 - **Last Updated**: 2026-06-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 抖音短视频客户端 一个使用 PyQt6 开发的简易短视频客户端,模仿抖音官网界面设计。 ## 功能特性 - ✅ 深色系主题界面(背景 #1a1a1a,白色字体,红色高亮) - ✅ 经典三栏布局:左侧边栏 + 顶部栏 + 主内容区 - ✅ 响应式流式布局,视频卡片自动适应窗口大小 - ✅ 实时搜索过滤功能 - ✅ 视频播放功能(需要 PyQt6-Multimedia) - ✅ 模拟登录对话框 - ✅ 左侧导航栏(精选、推荐、搜索) ## 安装依赖 ```bash pip install -r requirements.txt ``` **注意**: - 需要 Python 3.8+ - PyQt6-Multimedia 用于视频播放功能(可选) ## 运行程序 ```bash cd src python main.py ``` ## 项目结构 ``` src/ ├── main.py # 程序入口 ├── models/ │ └── video_model.py # 视频数据模型 ├── widgets/ │ ├── main_window.py # 主窗口 │ ├── top_bar.py # 顶部栏 │ ├── side_bar.py # 左侧边栏 │ ├── content_area.py # 主内容区 │ ├── video_card.py # 视频卡片 │ ├── flow_layout.py # 自定义流式布局 │ └── video_player.py # 视频播放器 ├── dialogs/ │ └── login_dialog.py # 登录对话框 ├── styles/ │ └── style.qss # 样式表 ├── videos/ # 视频文件 └── images/ # 图片资源 ``` ## 使用说明 ### 基本操作 1. **浏览视频**: 滚动查看视频卡片列表 2. **搜索视频**: 在顶部搜索框输入关键词,实时过滤 3. **播放视频**: 点击任意视频卡片进入播放模式 4. **返回主页**: 点击播放器左上角"← 返回"按钮 5. **导航切换**: 点击左侧边栏的"精选"、"推荐"、"搜索" 6. **登录**: 点击右上角"登录"按钮 ### 键盘快捷键 目前暂不支持键盘快捷键(后续可扩展) ## 技术栈 - **GUI框架**: PyQt6 >= 6.5.0 - **多媒体**: PyQt6-Multimedia >= 6.5.0 (可选) - **Python**: 3.8+ ## 开发说明 ### 添加新视频 编辑 `src/models/video_model.py` 中的 `VIDEOS` 列表: ```python VideoInfo(id, "标题", "@作者", "时间", "videos/sampleX.mp4", "images/cardX.jpeg") ``` ### 修改样式 编辑 `src/styles/style.qss` 文件,使用 QSS (Qt Style Sheets) 语法。 ### 自定义组件 所有UI组件都在 `src/widgets/` 目录下,每个组件都是独立的类,易于扩展和修改。 ## 注意事项 1. **视频播放**: 如果未安装 PyQt6-Multimedia,播放器会显示提示信息 2. **资源路径**: 确保 videos 和 images 目录中存在对应的文件 3. **窗口缩放**: 支持任意窗口大小,卡片会自动重排 4. **最小列数**: 即使窗口很窄,也会保持至少2列显示 ## 故障排查 ### 问题1: PyQt6 导入失败 ```bash pip install PyQt6 PyQt6-Multimedia ``` ### 问题2: 视频无法播放 - 检查是否安装了 PyQt6-Multimedia - 确认视频文件格式 supported - Windows 系统通常自带编解码器 ### 问题3: 图片显示异常 - 检查 images 目录中是否存在对应的图片文件 - 确认文件名与 video_model.py 中的配置一致 ### 问题4: 样式表加载失败 - 检查 src/styles/style.qss 文件是否存在 - 确认文件编码为 UTF-8 ## 后续扩展方向 - [ ] 真实的后端 API 集成 - [ ] 视频点赞、收藏功能 - [ ] 用户个人中心 - [ ] 真实的无限滚动加载 - [ ] 视频分类和筛选 - [ ] 键盘快捷键支持 - [ ] 播放历史记录 ## 许可证 本项目仅用于教学和学习目的。 ## 联系方式 如有问题或建议,欢迎反馈!