2017-09-25 38 views
0

这里有一个屏幕截图来解决我的问题。 Qt Creator在CMake项目中突出显示qt特定关键字无效。我使用Qt Creator的4.2.2和Fedora 26在CMake项目中为Qt关键字启用语法高亮显示

signals and public slots are wrong but must be highlighted as correct

我试图用系统的语法高亮defenition文件和Qt提供。但它不能帮助我。那么如何解决这个问题?

CMake的代码:

project("highlight-cmake") 
cmake_minimum_required(VERSION 3.5) 

find_package(Qt5Core REQUIRED) 
find_package(Qt5Gui REQUIRED) 
find_package(Qt5Widgets REQUIRED) 

include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR}) 

set(HEADERS 
    mainwindow.h 
) 

set(SOURCES 
    mainwindow.cpp 
    main.cpp 
) 

set(FORMS 
    mainwindow.ui 
) 

qt5_wrap_cpp(MOC_SOURCES ${HEADERS}) 
qt5_wrap_ui(UI_SOURCES ${FORMS}) 

add_executable(${PROJECT_NAME} ${HEADERS} ${SOURCES} ${MOC_SOURCES} ${UI_SOURCES}) 
target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Gui Qt5::Widgets) 

回答

0

你似乎有QT_NO_KEYWORDS限定设置。这会导致像slotssignals这样的Qt关键字未定义。要么undefine QT_NO_KEYWORDS要么使用Q_SLOTS而不是slotsQ_SIGNALS而不是signals

+0

QT_NO_KEYWORDS未设置。我改进了我的问题并添加了CMake代码。无论如何,我在编译时检查了真正的命令。 –

相关问题