代码之家  ›  专栏  ›  技术社区  ›  Anwar Shaikh

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

  •  7
  • Anwar Shaikh  · 技术社区  · 9 年前

    Qmake 它运行良好,用户界面也很好。另一方面,若使用CMake构建它,它可以很好地工作,但应用程序UI很模糊。

    QMake - enter image description here 使用生成的应用程序的UI CMake 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

    1 回复  |  直到 9 年前
        1
  •  7
  •   Anwar Shaikh    9 年前

    解决了的!

    Info.plist 如前所述的文件 here .

    添加以下密钥的文件解决了该问题-

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

    添加自定义 信息列表 CMakeLists.txt 文件-

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