这是一个屏蔽我的问题的屏幕截图。 Qt Creator在CMake项目中将qt特定关键字强调为无效。我使用Qt Creator 4.2.2和Fedora 26。
我尝试使用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 :(得分:0)
您似乎有QT_NO_KEYWORDS
定义集。这会导致slots
和signals
等Qt关键字未定义。要么取消定义QT_NO_KEYWORDS
,要么使用Q_SLOTS
代替slots
和Q_SIGNALS
而不是signals
。