qtmplayer/mainwindow.h

67 lines
1.5 KiB
C
Raw Normal View History

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QDebug>
2023-08-30 20:59:44 +08:00
#include <QString>
2023-08-29 21:14:28 +08:00
#include <unistd.h>
2023-08-30 16:09:27 +08:00
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <cstdio>
#include <cstring>
#include <string>
#include <vector>
#include <dirent.h>
#include <signal.h>
using namespace std;
2023-08-29 21:14:28 +08:00
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
2023-08-30 20:59:44 +08:00
public:
int fd[2]; // 声明无名管道
int fifo_fd; // 声明有名管道
int index = 0; // 歌曲索引
vector<string> vectorSong; // 歌曲名动态数组
2023-08-31 08:56:25 +08:00
int play_btn_flag = 0; // play 按钮点击标识
2023-08-30 20:59:44 +08:00
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
2023-08-29 20:24:16 +08:00
public:
void initMainWindow(); // 主窗体初始化
2023-08-29 21:14:28 +08:00
void mplayerInit(); // 初始化 mplayer
void scanSong(); // 扫描歌曲文件
2023-08-31 08:56:25 +08:00
void setSongList(); // 向歌曲列表设置歌曲内容
public slots:
void playNextSong(); // 切换歌曲槽函数I
void setCurrentTimeLabel(int time); // 设置当前时间标签槽函数
void setCurrentSlider(int currentProgress); // 设置当前进度条
signals:
void currentTimeSignal(int time); // 当前时间信号
void currentProgressSignal(int currentProgress); // 当前进度信号
2023-08-29 20:24:16 +08:00
2023-08-30 19:57:29 +08:00
private slots:
void on_play_btn_clicked();
void on_back_btn_clicked();
void on_front_btn_clicked();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H