|
附上我显示数据库内容和双击播放的代码
- void MainWindow::init_list()
- {
- QSqlQuery query;
- model=new QSqlTableModel(this);//本地音乐列表数据库模型
- model->setTable("LocalMusic");
- model->select();
- query.exec("select * from LocalMusic");
- while(query.next())//初始化本地音乐播放列表
- {
- int in=query.value(0).toInt();
- QString SongName=query.value(1).toString();
- QString SingerName=query.value(2).toString();
- QString SongPath=query.value(3).toString();
- qDebug()<<in<<SongName<<SingerName<<SongPath;
- // Playerlist->addMedia(QMediaContent(QUrl::fromLocalFile(SongPath)));
- //player->setPlaylist(Playerlist); //将播放列表加载到播放器
- if(!SongName.isEmpty()&&!SingerName.isEmpty())
- {
- int count = ui->MusicList->rowCount();
- ui->MusicList->setRowCount(count+1);
- QTableWidgetItem *itemName = new QTableWidgetItem(SongName);
- QTableWidgetItem *itemName1 = new QTableWidgetItem(SingerName);
- Playerlist->addMedia(QMediaContent(QUrl::fromLocalFile(SongPath)));
- ui->MusicList ->setItem(count,0,itemName);
- ui->MusicList -> setItem(count,1,itemName1);
- }
- }
- //player->setPlaylist(Playerlist); //将播放列表加载到播放器
- }
复制代码- void MainWindow::on_MusicList_doubleClicked(const QModelIndex &index)
- {
- player->setPlaylist(Playerlist);
- int currentIndex = index.row();//获得QTableWidget列表点击的行数
- Playerlist->setCurrentIndex(currentIndex);
- player->play();
- if(!isPlay)
- {
- ui->SPButton->setIcon(QIcon(QPixmap(":/new/prefix1/image/pause.ico").scaled(ui->SPButton->rect().size())));
- isPlay = true;
- }
- }
复制代码
|
|