Win10系统下VS2019编译Qt的Ribbon控件 -- SARibbon
Win10系统下VS2019编译Qt的Ribbon控件 -- SARibbon
- 一、源码下载
- 二、源码编译
- 三、封装成库
- 四、Qt配库
- 五、运行测试
原文链接:https://blog.csdn.net/m0_51204289/article/details/126431338
一、源码下载
【1】https://gitee.com/czyt1988/SARibbon/tree/master/src
【2】Qt下的Ribbon控件——SARibbon
二、源码编译
1、修改SARibbonBar文件夹下的CMakelists.txt文件,修改后的CMakelists.txt文件如下所示:
set(LIB_NAME SARibbonBar)set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)qt5_add_resources(QRCS resource.qrc)SET(HEADER_FILESSAFramelessHelper.hSARibbonStyleOption.hSARibbonActionsManager.hSARibbonBar.hSARibbonCustomizeData.hSARibbonCustomizeDialog.hSARibbonCustomizeWidget.hSARibbonMainWindow.hSAWindowButtonGroup.hSARibbonApplicationButton.hSARibbonTabBar.hSARibbonCategory.hSARibbonContextCategory.hSARibbonPannel.hSARibbonToolButton.hSARibbonMenu.hSARibbonGlobal.hSARibbonPannelOptionButton.hSARibbonSeparatorWidget.hSARibbonCategoryLayout.hSARibbonGallery.hSARibbonControlButton.hSARibbonGalleryGroup.hSARibbonGalleryItem.hSARibbonComboBox.hSARibbonElementCreateDelegate.hSARibbonElementManager.hSARibbonDrawHelper.hSARibbonLineEdit.hSARibbonCheckBox.hSARibbonButtonGroupWidget.hSARibbonStackedWidget.hSARibbonQuickAccessBar.hSARibbonCtrlContainer.hSARibbonPannelLayout.hSARibbonPannelItem.hSARibbonLineWidgetContainer.h
)qt5_wrap_cpp(MOC_HEADER_FILES ${HEADER_FILES})SET(SOURCE_FILESSAFramelessHelper.cppSARibbonStyleOption.cppSARibbonActionsManager.cppSARibbonBar.cppSARibbonCustomizeData.cppSARibbonCustomizeDialog.cppSARibbonCustomizeWidget.cppSARibbonMainWindow.cppSAWindowButtonGroup.cppSARibbonApplicationButton.cppSARibbonTabBar.cppSARibbonCategory.cppSARibbonContextCategory.cppSARibbonPannel.cppSARibbonToolButton.cppSARibbonMenu.cppSARibbonPannelOptionButton.cppSARibbonSeparatorWidget.cppSARibbonCategoryLayout.cppSARibbonGallery.cppSARibbonControlButton.cppSARibbonGalleryGroup.cppSARibbonGalleryItem.cppSARibbonComboBox.cppSARibbonElementCreateDelegate.cppSARibbonElementManager.cppSARibbonDrawHelper.cppSARibbonLineEdit.cppSARibbonCheckBox.cppSARibbonButtonGroupWidget.cppSARibbonStackedWidget.cppSARibbonQuickAccessBar.cppSARibbonCtrlContainer.cppSARibbonPannelLayout.cppSARibbonPannelItem.cppSARibbonLineWidgetContainer.cpp
)add_definitions(-DSA_RIBBON_BAR_MAKE_LIB)add_library(${LIB_NAME} SHARED${QRCS}${MOC_HEADER_FILES}${HEADER_FILES}${SOURCE_FILES}
)target_link_libraries(${LIB_NAME} Qt5::Widgets)set_target_properties(${LIB_NAME} PROPERTIESAUTOMOC TRUEAUTOUIC TRUEAUTORCC TRUEDEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX}VERSION ${PROJECT_VERSION}SOVERSION ${PROJECT_VERSION}
)
target_include_directories(${LIB_NAME} INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
install(TARGETS ${LIB_NAME}RUNTIME DESTINATION binLIBRARY DESTINATION binARCHIVE DESTINATION lib
)
install(FILES ${HEADER_FILES} DESTINATION include)if(WIN32)create_win32_resource_version(TARGET ${LIB_NAME}FILENAME ${LIB_NAME}EXT "dll"DESCRIPTION "Ribbon control library for Qt")
endif()
2、使用Cmake编译即可。
三、封装成库
1、编译成功后点击生成,在中出现如下图所示的Debug和Release文件夹
2、新建lib文件夹将Debug文件夹中的SARibbonBard.lib和Release文件夹中的SARibbonBar.lib复制粘贴进lib文件夹。
3、新建bin文件夹将Debug文件夹中的SARibbonBard.dll和SARibbonBard.pdb以及Release文件夹中的SARibbonBar.dll复制粘贴进bin文件夹。
4、新建include文件夹将src——SARibbonBar中的内容复制粘贴进include文件夹,即可完成库的封装。
四、Qt配库
1、新建QtWidgetsApplication应用程序
2、在属性页添加相应的包含目录和库目录。
3、在链接器中输入附加依赖项