2017-01-20 10 views
0

テーブルビューでグリッド形式で表示する必要があります。セルをクリックすると、クリックした画像のパスを取得する必要があります。セルが、どのように小枝のピックスマップに沿ってQStandardItem内の画像パスを保存するには、no Iのアイデア、Qt tableViewセル内の表示画像とクリック時のパスを取得

QStandardItemModel *model; 
model=new QStandardItemModel(); 
ui->tableView->setModel(model); 


QString imgPath = "/home/haris/Pictures/face/3.png"; 
QPixmap pix1(imgPath); 
QStandardItem *item = new QStandardItem(); 
item->setData(QVariant(pix1), Qt::DecorationRole); 
model->setItem(0, 0, item); 

item = new QStandardItem(); 
item->setData(QVariant(pix1), Qt::DecorationRole); 
model->setItem(0, 1, item); 
+1

あなたはこの 'アイテム - >のsetData(QVariant(imgPath)、Qtの::のUserRole)のようにそれを試すことができます。素晴らしい作品' –

+0

おかげで、あなたは答えとして、それを追加した場合私はそれを受け入れます。 – Haris

答えて

1

あなたはsetData()を使用してQStandardItemに任意のデータを保存することができます。それは第3のパラメータとしてQt::UserRoleを渡すためです。

例:

item->setData(QVariant(imgPath), Qt::UserRole); 
関連する問題