qt5.5不显示系统托盘

时间:2016-03-07 03:27:10

标签: c++ linux qt gnome-3 xfce

这里是similar problem,但我无法从中获得答案。

我尝试official example并看到以下截图(在镜头中,qt app系统托盘不存在)

enter image description here

如何制作系统托盘?

这是我的CMakeLists.txt

cmake_minimum_required(VERSION 3.3)
project(systray)

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(Qt5Widgets_DIR /home/roroco/Qt/5.5/gcc_64/lib/cmake/Qt5Widgets)
set(Qt5Gui_DIR /home/roroco/Qt/5.5/gcc_64/lib/cmake/Qt5Gui)
find_package(Qt5Widgets)

add_executable(main main.cpp window.cpp systray.qrc)
target_link_libraries(main Qt5::Widgets)

我的linux版本(桌面环境是xfce)

roroco@roroco ~/Pictures $ lsb_release -a
No LSB modules are available.
Distributor ID: LinuxMint
Description:    Linux Mint 17.2 Rafaela
Release:    17.2
Codename:   rafaela

1 个答案:

答案 0 :(得分:0)

我从this

获得解决方案
  

然后在' session&启动'我创建了一个新的自动启动条目   以下命令:

     

bash -c'导出DBUS_SESSION_BUS_ADDRESS ="" &安培;&安培; dropbox start -i'

所以丑陋的解决方案是在启动qt app之前确保DBUS_SESSION_BUS_ADDRESS,我希望有人可以改进这个答案并告诉我它的机制