gpt4 book ai didi

c++ - QAction 不显示来自 Pixmap 的图标

转载 作者:太空宇宙 更新时间:2023-11-04 11:31:44 26 4
gpt4 key购买 nike

在过去的几个小时里,我试图解决在 QAction 中显示图标的问题。
问题是没有显示图标,只有文本解密放在它的位置'Roads'。
我试过调试它并且一直QPixmap是NULL,看起来它找不到文件。


这是我的代码的样子:

QPixmap icon(":/road.png");
QAction *A1 = new QAction(icon,"Road...", 0);
A1->setIconVisibleInMenu(true);
A1->setVisible(true);
connect(A1, SIGNAL(triggered()), SLOT(triggeredA1()));

我读过 this article .根据它,我通过添加行更改了我的 pro 文件:

RESOURCES = ./res/icons.qrc

在 src 目录中,我创建了子目录“res”并将我的图标放在那里:

-src
--res
road.png
load.gif
done.gif

这是我的 icons.qrc 文件的样子:

<RCC>
<qresource prefix="/">
<file>road.png</file>
<file>done.gif</file>
<file>load.gif</file>
</qresource>
</RCC>

即使在所有这些操作之后,QPixmap 仍然是 NULL。我做错了什么?

最佳答案

解决方法:

我正在使用 OS X 并使用 MacPorts 构建 Qt4。出于某种原因,libpng 未包含在 MacPorts 提供的构建中。因此,解决方案是通过 MacPorts 手动构建 libpng:

sudo port install libpng

并通过在 .pro 文件中添加以下行将此库包含到您的项目中

LIBS += -lpng

完成这些步骤后,您就可以在您的项目中使用上面写的 .png 文件了。

关于c++ - QAction 不显示来自 Pixmap 的图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24507382/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com