歌曲列表标识当前歌曲

This commit is contained in:
flykhan 2023-08-31 16:12:40 +08:00
parent bb93831252
commit effdecb2e7
1 changed files with 27 additions and 25 deletions

View File

@ -166,6 +166,7 @@ void MainWindow::playNextSong()
// int len = sprintf(changeSongBuf, "loadfile ./song/%s\n", vectorSong[index].c_str());
qDebug() << changeSongBuf << endl; // 控制台打印下一首歌的名字
// write(this->fifo_fd, changeSongBuf.toUtf8().toStdString().c_str(),changeSongBuf.toUtf8().toStdString().size());
ui->song_list_widget->setCurrentRow(index);
write(this->fifo_fd, changeSongBuf, len); // 将获取的下一首歌曲名写入到有名管道中
}
@ -180,6 +181,7 @@ void MainWindow::playLastSong()
// int len = sprintf(changeSongBuf, "loadfile ./song/%s\n", vectorSong[index].c_str());
qDebug() << changeSongBuf << endl; // 控制台打印下一首歌的名字
// write(this->fifo_fd, changeSongBuf.toUtf8().toStdString().c_str(),changeSongBuf.toUtf8().toStdString().size());
ui->song_list_widget->setCurrentRow(index);
write(this->fifo_fd, changeSongBuf, len); // 将获取的下一首歌曲名写入到有名管道中
}
@ -209,25 +211,25 @@ void *getTimerThreadFunc(void *arg)
// 发送获取的当前时间的命令
// 发送 get_time_pos 命令到管道中
write(p->fifo_fd, "get_time_pos\n", strlen("get_time_pos\n"));
// usleep(500*1000); // 休眠 0.5 秒
// usleep(500*1000); // 休眠 0.5 秒
// 发送获取当前歌曲进度的命令
write(p->fifo_fd,"get_percent_pos\n",strlen("get_percent_pos\n"));
usleep(500*1000); // 休眠 0.5 秒
// // 发送获取的当前歌曲元数据信息的命令
// // 发送获取当前歌曲长度的命令 ANS_LENGTH
// write(p->fifo_fd, "get_time_length\n", strlen("get_time_length\n"));
// usleep(125*1000);
// // 发送获取当前歌曲名的命令 ANS_META_TITLE
// write(p->fifo_fd, "get_file_name\n", strlen("get_file_name\n"));
// usleep(125*1000);
// // 发送获取当前歌曲歌手的命令 ANS_META_ARTIST
// write(p->fifo_fd, "get_meta_artist\n", strlen("get_meta_artist\n"));
// usleep(125*1000);
// // 发送获取当前歌曲专辑的命令 ANS_META_ALBU
// write(p->fifo_fd, "get_meta_album\n", strlen("get_meta_album\n"));
// usleep(125*1000);
// // 发送获取的当前歌曲元数据信息的命令
// // 发送获取当前歌曲长度的命令 ANS_LENGTH
// write(p->fifo_fd, "get_time_length\n", strlen("get_time_length\n"));
// usleep(125*1000);
// // 发送获取当前歌曲名的命令 ANS_META_TITLE
// write(p->fifo_fd, "get_file_name\n", strlen("get_file_name\n"));
// usleep(125*1000);
// // 发送获取当前歌曲歌手的命令 ANS_META_ARTIST
// write(p->fifo_fd, "get_meta_artist\n", strlen("get_meta_artist\n"));
// usleep(125*1000);
// // 发送获取当前歌曲专辑的命令 ANS_META_ALBU
// write(p->fifo_fd, "get_meta_album\n", strlen("get_meta_album\n"));
// usleep(125*1000);
}
}
@ -260,14 +262,14 @@ void *readPipeMSG(void *arg)
emit p->currentProgressSignal(currentProgress);
}
// // 如果消息是 "当前歌曲元数据信息"
// else if(strncmp(buf,"ANS_LENGTH", strlen("ANS_LENGTH")) == 0)
// {
// int currentProgress = 0;
// sscanf(buf, "ANS_LENGTH=%d", &currentProgress);
// // 给 UI 发送进度信号
// emit p->currentProgressSignal(currentProgress);
// }
// // 如果消息是 "当前歌曲元数据信息"
// else if(strncmp(buf,"ANS_LENGTH", strlen("ANS_LENGTH")) == 0)
// {
// int currentProgress = 0;
// sscanf(buf, "ANS_LENGTH=%d", &currentProgress);
// // 给 UI 发送进度信号
// emit p->currentProgressSignal(currentProgress);
// }
}
}
}
@ -281,7 +283,7 @@ void MainWindow::setSongList()
strList.append(QString::fromStdString(*it));
}
ui->song_list_widget->addItems(strList);
// ui->song_list_widget->setCurrentRow(2);
// ui->song_list_widget->setCurrentRow(2);
}
void MainWindow::on_play_btn_clicked()
@ -347,8 +349,8 @@ void MainWindow::on_mute_btn_clicked()
if(mute_flag == 0) // 没静音则按下后设置静音
{
ui->mute_btn->setIcon(QIcon(":/icon2/sound-on"));
// volume_mute_switch(1);
// mute_flag = 1;
// volume_mute_switch(1);
// mute_flag = 1;
volume_mute_switch(++mute_flag);
}
else if (mute_flag == 1) // 已静音则按下后取消静音