如何从Qt中的资源创建QPicture?

时间:2010-06-08 06:08:13

标签: qt resources qt4

我有:images/pic.gif

的资源

我可以从此资源中创建QPicture,还是必须从文件中加载?

3 个答案:

答案 0 :(得分:3)

QPicture用于记录QPainter命令,而不是用于记录图像数据。 如果要加载图像,请使用QPixmap或QImage。您可以使用他们的load()方法。 要访问捆绑为资源的映像文件,请使用“:/”访问资源:“:/ someFile.png”。确切的路径和文件名在qrc文件中指定。

答案 1 :(得分:1)

我认为您的问题就像将 images / pic.gif 添加到资源文件后,是否必须从资源文件或直接访问 images / pic的位置。 GIF 即可。

现在我对这个问题的回答是,即使您已将图像添加到资源文件并访问它,它也会间接访问物理文件本身。为了说明这一点,在将 images / pic.gif 添加到资源文件中后,尝试从应用程序中的位置和访问中删除 images / pic.gif 。你将无法获得图像。因此,即使将其添加到资源文件中,它也类似于访问其原始位置中存在的物理文件。查看 Qt Resources page

但将所需文件整理到资源文件中是一种很好的做法和逻辑,这样所有必需的文件都存在于同一位置。

使用QPicture,您可以通过

将其加载到您的应用程序中
bool QPicture::load ( const QString & fileName, const char * format = 0 )

答案 2 :(得分:0)

您必须使用Qicon或Qpixmap从资源加载图像。 QPIcture用于保存图片。