linux qt设置应用程序图标大小,Qt5 linux如何设置窗口图标图像
我有一个用Qtdevise器devise的用户界面,并用c ++编写了代码。 我正在使用catkin ,这只是cmake,来build立我的项目。 目前当程序启动时,应用程序图标看起来像,
。我想这是一个我指定的形象,但一直无法弄清楚如何得到这个工作。
我的项目目录结构如下所示
package |--CMakeLists.txt |--src |--main.cpp |--MainWindow.cpp |--resources |--images |--kitty.png |--icons.qrc |--include |--MainWindow.hpp |--ui |--MainWindow.ui
我的CMakeLists.txt文件看起来像,
cmake_minimum_required(VERSION 2.8.7) project(shared_memory_transport_sliderboard) find_package(catkin REQUIRED) find_package(Qt5Widgets REQUIRED) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}") add_definitions(${Qt5Widgets_DEFINITIONS}) set(INCLUDES_DIR ${PROJECT_SOURCE_DIR}/include) set(SOURCES_DIR ${PROJECT_SOURCE_DIR}/src) catkin_package( INCLUDE_DIRS ${INCLUDES_DIR} DEPENDS Qt5Widgets ) # c++11 include(CheckCXXCompilerFlag) CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X) if(COMPILER_SUPPORTS_CXX0X) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") else() message(FATAL_ERROR "The compiler ${CMAKE_CXX_COMPILER} has no C++0x support. Please use a different C++ compiler.") endif() include_directories( ${CMAKE_CURRENT_BINARY_DIR} ${INCLUDES_DIR} ${catkin_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS} ) set(QT_FORMS ui/MainWindow.ui ) set(QT_MOC ${INCLUDES_DIR}/${PROJECT_NAME}/MainWindow.h ) set(QT_SOURCES src/MainWindow.cpp ) qt5_wrap_cpp(QT_MOC_HPP ${QT_MOC}) qt5_wrap_ui(QT_FORMS_HPP ${QT_FORMS}) qt5_add_resources(ui_resources ${PROJECT_SOURCE_DIR}/resources/icons.qrc) add_executable(smt_sliderboard src/main.cpp ${QT_SOURCES} ${QT_MOC_HPP} ${QT_FORMS_HPP} ${ui_resources}) target_link_libraries(smt_sliderboard ${catkin_LIBRARIES} Qt5::Widgets) install(TARGETS smt_sliderboard ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} ) install(DIRECTORY include/${PROJECT_NAME}/ DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} FILES_MATCHING PATTERN "*.h")
编译我的代码时,编译器会生成一个qrc_icons.cpp.o对象,但是当我运行可执行文件时,图标不会显示出来。 我有的icons.qrc文件看起来像, images/kitty.jpg
我也曾尝试在MainWindow.h中添加以下内容,
QApplication myApp(argc, argv); QIcon appIcon; appIcon.addFile(":/Icons/kitty"); myApp.setWindowIcon(appIcon);
这个编译得很好,但还是没有图标。 感觉像我已经尝试了所有没有运气,感谢您的帮助!
从Qt资源系统文档:
请注意,列出的资源文件必须与.qrc文件或其子目录之一位于同一目录中。
所以你需要一个目录结构如下所示:
|--images |--images |--kitty.png |--icons.qrc
更新 :
你也应该参考在Qt文档中设置应用程序图标 ,以确保你处理任何平台特定的问题。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
