gpt4 book ai didi

c++ - 使用 CMake 构建简单的 Qt UI 应用程序会创建模糊的 UI

转载 作者:太空狗 更新时间:2023-10-29 21:34:49 27 4
gpt4 key购买 nike

我创建了一个只有一个主窗口和一个按钮的简单 Qt 应用程序。当我使用 Qmake 在 Qt 中构建它时,它工作正常并且 UI 也很好。另一方面,如果使用 CMake 构建它,它可以正常工作,但应用程序 UI 很模糊。

谁能告诉我如何解决它。谢谢。

使用 QMake 生成的应用程序的 UI- enter image description here使用 CMake 生成的应用程序 UI enter image description here

我的CmakeList.txt文件

make_minimum_required(VERSION 3.0.2)
project(MyProject)

find_package(Qt5Widgets 5.9 PATHS /usr/local/Cellar/qt/5.9.1)
find_package(OpenGL)
#find_package(IOKit PATHS /System/Library/Frameworks/IOKit.framework/Versions/A)

set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)

add_library(mainwindow mainwindow.cpp)
target_link_libraries (mainwindow Qt5::Widgets)

#set_target_properties(${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE YES)
add_executable(MyProject MACOSX_BUNDLE main.cpp)
target_link_libraries (MyProject mainwindow ${OPENGL_gl_LIBRARY})

项目结构-

enter image description here

我的机器配置-

enter image description here

最佳答案

解决了!

我认为为 MacOS 创建包需要在 Info.plist 文件中设置以下键,因为它提到了 here .

通过添加以下键创建自定义 Info.plist 文件解决了问题-

<key>NSPrincipalClass</key>
<string>NSApplication</string>
<key>NSHighResolutionCapable</key>
<string>True</string>

要添加自定义 Info.plist,请在 CMakeLists.txt 文件中添加以下行-

# Set a custom plist file for the app bundle
set_target_properties(MyProject PROPERTIES MACOSX_BUNDLE_INFO_PLIST <dir>/Info.plist)

关于c++ - 使用 CMake 构建简单的 Qt UI 应用程序会创建模糊的 UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45285818/

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