【问题标题】:Qt/C++: Icons not showing up when program is runQt/C++:程序运行时图标不显示
【发布时间】:2010-11-06 18:11:46
【问题描述】:

我在 Qt Designer 的 MainWindow 中的 QToolBar 中添加了一个 QAction(使用 Qt Creator IDE),并为该操作提供了一个图标(通过“选择文件”并选择位于与我的项目和源代码相同的目录)。该图标在 Qt Designer 的工具栏中正常显示,但在项目运行时不显示。在 Windows 上选择标题栏图标时,我遇到了类似的问题。我以前从未在 Qt 中使用过图形,有什么特别需要我做的吗?

截图:

【问题讨论】:

    标签: qt icons toolbar


    【解决方案1】:

    我发现自己做了所有正确的事情,添加了一个 qrc 文件并将我的图标放在那里。当我运行程序没有交易。 结果我忘了运行 qmake

    • 右键单击您的项目名称并选择“运行 qmake”。或者去 Build>Run qmake。

    每次您更改 .pro 文件中的某些内容时,您都需要再次运行 qmake。创建资源文件会隐式将参数添加到 .pro 文件中,因此您需要这样做。

    希望它可以帮助其他人。

    【讨论】:

      【解决方案2】:

      您是否制作了 QRC 文件(即 Qt 的资源文件等价物?) 如果不是,那将解释您所看到的。图标将显示在创建器中,但不会显示在最终编译的可执行文件中。看看这个:

      http://doc.qt.io/qt-5/resources.html

      【讨论】:

      【解决方案3】:

      此外,在影子构建的情况下,不要忘记在您的应用程序可执行文件上使用 windeployqt.exe。之后,几个文件夹将添加到您的构建目录中。特别是两个重要的文件夹:iconenginesimageformats,其中包含加载和绘制图标所需的几个 dll。

      【讨论】:

      • 这个.exe在哪里?
      【解决方案4】:

      您是否尝试过打开项目文件。例如,我的项目文件名为menu.pro,它包含以下内容:

      TEMPLATE = app
      QT = gui core
      CONFIG += qt debug warn_on console
      DESTDIR = bin
      OBJECTS_DIR = build
      MOC_DIR = build
      UI_DIR = build
      FORMS = ui/mainwindow.ui
      HEADERS = src/mainwindowimpl.h
      SOURCES = src/mainwindowimpl.cpp src/main.cpp
      RESOURCES = Images.qrc
      

      最后一行 (RESOURCES = Images.qrc) 是您需要放入项目文件的内容:当然,使用您用于资源文件的名称,在我的例子中,它是 Images.qrc

      【讨论】:

        【解决方案5】:
        1. 添加图标时使用“选择资源”选项而不是“选择” 文件”选项。
        2. 右键单击您的项目名称,然后单击“运行 qmake”。

        【讨论】:

          【解决方案6】:

          还要确保您不要忘记在代码中包含 qrc 文件(例如在 main(...) 中)和 Q_INIT_RESOURCE(MyIconResource); 这也可能导致最终 exe 中缺少图标。

          【讨论】:

            【解决方案7】:

            我也遇到过这样的问题。就我而言,我关闭了 qt creator 并删除了构建文件夹(类似于 build-projectname.. )。然后重启qt creator。然后神奇地我的图标出现在正在运行的应用程序上。

            当qt表现不佳时,我经常使用这个技巧。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2016-07-02
              • 1970-01-01
              • 2021-02-28
              • 1970-01-01
              • 2015-01-15
              • 1970-01-01
              • 2017-05-10
              • 2023-03-15
              相关资源
              最近更新 更多