【发布时间】:2016-09-06 18:56:02
【问题描述】:
我有一个带有标题栏图标的小型 Windows 应用程序,它在我的开发机器(发布和调试)上工作正常,但它不能工作其他机器。一般来说,我的 Qt 4.8.5 代码如下所示:
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
Q_INIT_RESOURCE(gcapp);
app.setWindowIcon(QIcon("./gc.ico"));
GCApp dialog;
dialog.show();
return app.exec();
}
我已经使用以下选项尝试了许多迭代:
app.setWindowIcon(QIcon("gc.ico"));
app.setWindowIcon(QIcon(":/gc.ico"));
app.setWindowIcon(QIcon(":gc.ico"));
我还尝试在 NetBeans 项目的资源文件部分添加 gc.ico。我已经编辑了项目属性、自定义定义(这些更改了 .pro 文件)并尝试了以下操作:
RC_ICONS = gc.ico
RC_ICONS += gc.ico
win32:RC_ICONS = gc.ico
上述所有内容的大多数组合都显示了开发机器上发布和调试可执行文件的标题栏中的 gc.ico 文件。它们都不能在其他机器上工作。
我将 gc.ico 包含在目标计算机上的目录中,与发布可执行文件一起。
【问题讨论】:
-
这些“其他机器”是什么?他们是否支持 .ico 图形格式?如果您使用 .png 代替它是否有效?
-
所有目标机器和我的开发机器都是Windows 10 PC。我最初使用 .gif,后来在发表这篇文章之前切换到 .ico。您是否认为 .png 可能会产生与 .gif 和 .ico 不同的结果?