我想在 Qt 中制作一组图像,但不知道如何处理相同的图像。
我想在事件的小部件中从数组中加载图像。
任何帮助将不胜感激。
QtQImage
使用隐式数据共享,因此您可以将它们传递并在数据结构中使用它们,就像您使用的 exampleint
或QString
.
所以,QImage
像你做数组一样做int
数组......
但是,如果您不特别想要数组,最常见的解决方案可能最适合您在 Qt 中的情况QList
(注意:它不是链表,它是可调整大小的数组,非常像std::vector
):
QList<QImage> myImages;
你可以简单地制作一个 QImages 的 QList。所以我会这样做:
// for simplicity
typedef QList<QImage> QImageList;
// allocate the list
QImageList imageList;
// create a list where you will put paths of your images
QStringList paths;
// then create the list of images
for(int i=0;i<paths.size();++i){
imageList.push_back(QImage(paths.at(i));
}
QImage img1("C:\\img1.jpg");
QImage img2("C:\\img2.jpg");
QImage img3("C:\\img3.jpg");
使用std::vector
:
std::vector<QImage> img_array;
img_array.push_back(img1);
img_array.push_back(img2);
img_array.push_back(img3);
或者QVector
:
QVector<QImage> img_array;
img_array.push_back(img1);
img_array.push_back(img2);
img_array.push_back(img3);