-2

自分でQfileDialog入力して、選択したファイルをwidgetListに入れることができるリストがあります。

リストにアクセスして、これらすべてのアイテムに色を付けて、やりたいことを何でもできますが、次の 1 つの問題を除きます。

リストから 1 つの項目を選択し、何らかの方法で変換しQStringListて、Phonon MediaSource として使用できるようにしたいと考えています。

このアイテムを抽出する方法がわかりません。再生できるように、表示されているテキストListWidgetを入れてください。mediaObj

これが私のコードのほんの一部です:

FileDialog を開く方法 (作品):

 QStringList fileNames;
QFileDialog fDialog(this);
fDialog.setFileMode(QFileDialog::AnyFile);
fDialog.setNameFilter(tr("Music(*.mp3)"));
fDialog.setViewMode(QFileDialog::Detail);

while (true) {
    if (fDialog.exec()) {
        fileNames = fDialog.selectedFiles();
        widget.list->addItems(fileNames);
        musicObj->enqueue(fileNames.last());
    } else {
        break;
    }
}

リストでクリックされた 1 つの項目にアクセスする方法:

 QListWidgetItem *list_itm = widget.list->currentItem();
 list_itm->setTextColor(Qt::red);

しかし、カーソル位置に表示されている文字列を抽出できます。

4

1 に答える 1

0
QListWidgetItem *list_itm = widget.list->currentItem();
list_itm->setTextColor(Qt::red);

QStringList list;
list << list_itm.text();

私が誤解していない限りQStringList、現在のウィジェット アイテムに 1 つのアイテムが必要なだけです。

于 2012-08-13T16:10:08.603 に答える