若imageMap为imageMap.insert("apple", qMakePair(QPixmap("apple.jpg"), "a round fruit with red or green skin"));,QString imagePath应该怎么写
时间: 2023-07-13 22:03:59 浏览: 92
如果你想获取键名为"apple"的图片路径,可以使用以下代码:
```cpp
QString imagePath = imageMap.value("apple").first.fileName();
```
这里的`value()`函数返回一个`QPair`类型的值,其中`first`成员是图片`QPixmap`对象,通过`fileName()`函数获取该图片对象对应的文件路径。
相关问题
QString imagePath = imageMap.value(selectedString);中若imageMap为imageMap.insert("apple", qMakePair(QPixmap("apple.jpg"), "a round fruit with red or green skin"));,应该怎么添加
可以这样添加:
```
imageMap.insert("apple", qMakePair(QPixmap("apple.jpg"), "a round fruit with red or green skin"));
```
其中,"apple" 是键,qMakePair(QPixmap("apple.jpg"), "a round fruit with red or green skin") 是值。qMakePair 函数用于创建一个包含两个元素的 pair 对象,第一个元素是 QPixmap 对象,第二个元素是描述该图片的字符串。
QString imagePath = imageMap.value("apple").first.fileName();成员Qpixmap中没有filename成员函数
是的,您是正确的。QPixmap类确实没有fileName()成员函数。根据您的代码,我猜测您想获取QImage对象的文件名。您可以通过以下方式获取QImage对象的文件名:
```cpp
QString imagePath = imageMap.value("apple").first.fileName();
```
应该改为:
```cpp
QString imagePath = imageMap.value("apple").first.image().fileName();
```
这将返回包含QImage对象的文件名的QString对象。
阅读全文