Ubuntu 12.10中的wxTaskBarIcon

时间:2013-01-25 11:35:33

标签: c++ wxwidgets ubuntu-12.10

我在Ubuntu 12.10下构建了wxWidgets 2.9.3(目前我必须坚持这个版本),我似乎无法使用wxTaskBarIcon类。与wxWidgets一起提供的示例正在编译并运行,但图标本身未显示在任务栏本身上。我检查了我的配置,我知道,wxWidgets库的编译是使用默认设置执行的(对于任务栏支持,这是“是”)。

知道如何让它发挥作用吗?这个问题与wxWidgets和/或Ubuntu版本有关吗?

编辑: 它绝对没有连接到wxWidgets版本(在wx 2.8,2.9.3,2.9.4下检查)。

编辑2: 如果重要: 系统在VirtualBox 4.2.6上,安装了所有默认设置。我每周至少安装一次更新。

1 个答案:

答案 0 :(得分:3)

在Ubuntu下,11.04任务栏由Unity管理,默认情况下不允许所有程序将其图标放在那里。您必须将应用程序列入白名单,以便让它访问任务栏。这是我最初找到答案的地方:

http://ubuntuforums.org/showthread.php?t=1737589

基本上你必须打电话:

gsettings set com.canonical.Unity.Panel systray-whitelist "['JavaEmbeddedFrame', 'Mumble', 'Wine', 'Skype', 'YOUR_APPLICATION']"

然后注销,登录。这会将YOUR_APPLICATION添加到Unity.Panel白名单。请记住,在这种情况下,您还必须事先列出该列表中的项目。您可以通过以下方式查看白名单的外观:

gsettings get com.canonical.Unity.Panel systray-whitelist

就我而言(因为我正在开发环境)我只是将它设置为"['all']"。这将允许所有应用程序访问任务栏。

请记住,Ubuntu将会放弃这样的支持,将来你应该使用AppIndicator库来实现这个目标。这意味着,即使使用白名单,wxTaskBarIcon也不会正常工作,除非它将使用AppIndicator库。

来源:http://www.webupd8.org/2013/02/unity-notification-area-systray.html