Python----PyQt开发(PyQt高级:手搓一个音乐播放器)

一、效果展示

二、设计PyQt界面

本次ui界面设置用到了水平和垂直布局

2.1、设置ui窗口显示大小与位置

        self.setWindowTitle('音乐播放器')  # 设置窗口标题
        self.setGeometry(800, 300, 800, 800)  # 设置窗口大小和位置

2.2、创建显示歌曲列表控件

        # 创建显示歌曲列表的控件        
        self.song_list = QListWidget(self)

2.3、创建歌曲名称和歌曲时间

        self.name_label = QLabel('歌曲名称', self)
        self.time_label = QLabel('00:00/00:00', self)

2.4、把歌曲名称和歌曲时间水平布局

        # 创建水平布局用于放置歌曲名称和时间标签
        self.label_layout = QHBoxLayout()
        self.label_layout.addWidget(self.name_label)
        self.label_layout.addWidget(self.time_label)

2.5、创建歌曲进度条

        # 创建播放进度滑块
        self.player_slider = QSlider()
        self.player_slider.setValue(0)  # 初始化滑块值为0
        self.player_slider.setOrientation(Qt.Horizontal)  # 设置为水平滑块

2.6、创建播放,选择文件,上一首,下一首组件

        # 创建控制按钮
        self.play_btn = QPushButton('播放', self)
        self.choose_btn = QPushButton('选择文件', self)
        self.pre_btn = QPushButton('上一首', self)
        self.next_btn = QPushButton('下一首', self)

2.7、创建音量进度条

        # 创建音量滑块
        self.volume_slider = QSlider()
        self.volume_slider.setRange(0, 100)  # 设置音量范围
        self.volume_slider.setValue(30)  # 初始化音量值为30
        self.volume_slider.setOrientation(Qt.Horizontal)  # 设置为水平滑块

2.8、将按钮组件和音量进度条放在同一水平布局

        # 创建按钮水平布局
        self.btn_layout = QHBoxLayout()
        self.btn_layout.addWidget(self.play_btn)
        self.btn_layout.addWidget(self.choose_btn)
        self.btn_layout.addWidget(self.pre_btn)
        self.btn_layout.addWidget(self.next_btn)
        self.btn_layout.addWidget(self.volume_slider)

2.9、创建垂直布局,将其组件放入

        # 创建主垂直布局
        self.vbox = QVBoxLayout()
        self.vbox.addWidget(self.song_list)  # 添加歌曲列表
        self.vbox.addLayout(self.label_layout)  # 添加标签布局
        self.vbox.addWidget(self.player_slider)  # 添加播放进度滑块
        self.vbox.addLayout(self.btn_layout)  # 添加按钮布局

2.10、设置主布局

        self.setLayout(self.vbox)  # 设置主布局

三、添加事件

3.1、设置按钮点击事件到对应的槽函数<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值