根据/usr/share/applications我的创建:
intellij.desktop:
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Exec=/path/To/idea.sh"
Name[en_US]=Intellij
Name=Intellij
Icon=/path/to/intellij.png
Run Code Online (Sandbox Code Playgroud)
然后我将它拖到Unity启动栏.我点击它,但没有任何反应.我怎样才能使它工作?
JAVA_HOME设置正确,其他Java应用程序(如Eclipse)工作和单击idea.sh.
我的配置:
以下是AppIndicator的最小示例:
#!/usr/bin/python
import gobject
import gtk
import appindicator
if __name__ == "__main__":
ind = appindicator.Indicator("example-simple-client", "gtk-execute", appindicator.CATEGORY_APPLICATION_STATUS)
ind.set_status (appindicator.STATUS_ACTIVE)
menu = gtk.Menu()
menu_items = gtk.MenuItem('Quit')
menu.append(menu_items)
menu_items.connect("activate", gtk.main_quit)
menu_items.show()
ind.set_menu(menu)
gtk.main()
Run Code Online (Sandbox Code Playgroud)
不幸的是,关于此的文档非常不完整.我正在寻找的是一种检查AppIndicator菜单是否由用户打开的方法(例如,点击了指示器图标).那么当菜单打开时会发出一个信号吗?
我是在Linux下开发应用程序的新手.
我对使用.desktop文件在Ubuntu Unity工具栏中添加图标表示怀疑.
我有以下.desktop文件:
[Desktop Entry]
Type=Application
#Exec=/usr/share/ConnectDataSpace/appl/launcher.sh
Exec=/usr/share/XCloud/appl/launcher.sh
Type=Application
X-GNOME-Autostart-enabled=true
#Name[en_US]=Connect Data Space
Name[en_US]=XCloud
#Name=Connect Data Space
Name=XCloud
Comment[en_US]=
Comment=
StartupNotify=true
OnlyShowIn=GNOME;Unity;
#StartupWMClass=ConnectDataSpace
StartupWMClass=XCloud
#Icon=/usr/share/ConnectDataSpace/img/icoLauncher.png
Icon=/usr/share/XCloud/img/icoLauncher.png
Run Code Online (Sandbox Code Playgroud)
我的疑问是:究竟代表此文件的StartupWMClass = XCloud字段是什么?
我正在开发一个简单的GTK#应用程序(没什么严重的,只是一个小项目),我注意到我的应用程序菜单栏显示在我的应用程序窗口而不是Ubuntu的Unity全局菜单栏中.
有没有办法让菜单栏显示在统一菜单栏中?我试图谷歌一点但大多数结果似乎是关于禁用此行为 - 我想启用它.
目前,我正在通过MonoDevelop的可视化编辑器将菜单栏添加到VBox.
我有一个Java应用程序,其本质上就像一个即时消息类型的程序.在最近使用Unity界面"升级"到Ubuntu之前,我在系统托盘中显示了一个简单的图标.我知道有很多关于回到这个托盘的最初目的的讨论,并且不想在这里讨论.相反,我正在寻找一个简单而简洁的教程或文档,介绍如何将我的应用程序正确地集成到消息传递系统中.我想要弹出通知的新消息,我已经能够通过libnotify来做到这一点,但是我不知道如何将应用程序本身添加为消息菜单下的条目.任何帮助我指向正确方向的人都会非常感激.我需要该应用程序继续跨平台工作.
我有一个简单的Tcl脚本,它创建一个带菜单的窗口.
#! /usr/bin/tclsh
package require Tk
# Create the main message window
message .m -text {Hello Tcl!} -background white
pack .m -expand true -fill both -ipadx 100 -ipady 40
# Create the main menu bar with a Help-About entry
menu .menubar
menu .menubar.help -tearoff 0
.menubar add cascade -label Help -menu .menubar.help -underline 0
.menubar.help add command -label {About Hello ...} \
-accelerator F1 -underline 0 -command showAbout
# Define a procedure - an action for Help-About
proc showAbout {} …Run Code Online (Sandbox Code Playgroud) 我试图让我的 Qt 应用程序在 Unity Launcher 中显示一个图标,但它不起作用。在代码中,我只是使用:
qApp->setWindowIcon(QIcon("path/to/icon.png"));
Run Code Online (Sandbox Code Playgroud)
但它没有做任何事情。我也试过直接在主窗口上设置图标,但也无济于事。
知道可能是什么问题吗?
PS:我已经检查了图标路径,它是正确的。
我编写java应用程序并获取jar文件,它从命令行工作
java -jar program.jar
Run Code Online (Sandbox Code Playgroud)
我想编写安装程序,将我的应用程序放在Ubuntu的Unity Launcher(quicklaunch)中.
任何人都可以给我我怎么开始?
我正在戴尔桌面上安装Ubuntu 13.10.我已经安装了sqldeveloper并在我的Desktop/dir中创建了一个sqldeveoper.desktop文件来启动该程序.见下面的代码.我的问题是:在我的桌面屏幕上,我看到.desktop文件是一个sqldeveloper图标(带有绿色箭头的圆形db图标).我双击图标,程序启动.图标出现在我的Unity栏中,然后图像变为'?' 问号符号.
任何想法为什么会这样?icon.png(图像)位于桌面文件指向的位置.也许文件没有从Unity栏中正确看到路径?
sqldeveloper.desktop代码:
[Desktop Entry]
Type=Application
Version=1.0
Name=SQL Developer
GenericName=Oracle Development Environment
Comment=Proprietary environment for managing Oracle databases
Exec=sqldeveloper %F
Icon=/opt/sqldeveloper/icon.png
Terminal=false
Categories=Development;IDE;
StartupNotify=true
Run Code Online (Sandbox Code Playgroud)
感谢您的任何指导.JohnC
我正在尝试将 appindicator 与 gtk 菜单集成。我想要一些菜单项有这样的快捷方式:
不幸的是,在将加速器添加到第二个菜单项后,我仍然得到没有图标和快捷方式的项目。
我希望看到的是“item2”右侧的快捷方式。
int main (int argc, char **argv) {
gtk_init(&argc, &argv);
// main window
GtkWidget* window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_title(GTK_WINDOW(window), "menu-with-shortcuts-window");
gtk_window_set_icon_name(GTK_WINDOW(window), "menu-with-shortcuts-icon");
g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL);
gtk_widget_show_all(window);
// indicator
AppIndicator* indicator = app_indicator_new("menu-with-shortcuts-appindicator", "transmission-tray-icon", APP_INDICATOR_CATEGORY_APPLICATION_STATUS);
// menu
GtkWidget* indicator_menu = gtk_menu_new();
GtkWidget* item1 = gtk_menu_item_new_with_label("item1");
gtk_menu_shell_append(GTK_MENU_SHELL(indicator_menu), item1);
g_signal_connect(item1, "activate", G_CALLBACK(Item1Clicked), NULL);
gtk_widget_show(item1);
GtkAccelGroup* accel_group = gtk_accel_group_new();
gtk_window_add_accel_group(GTK_WINDOW(window), accel_group);
GtkWidget* item2 = gtk_image_menu_item_new_from_stock(GTK_STOCK_QUIT, accel_group);
gtk_widget_add_accelerator(item2, "activate", accel_group, GDK_q, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
gtk_menu_shell_append(GTK_MENU_SHELL(indicator_menu), item2);
g_signal_connect(item2, "activate", G_CALLBACK(Item2Clicked), NULL); …Run Code Online (Sandbox Code Playgroud) ubuntu-unity ×10
ubuntu ×6
appindicator ×2
icons ×2
java ×2
c ×1
c# ×1
gtk ×1
gtk# ×1
indicator ×1
installer ×1
launcher ×1
linux ×1
menu ×1
menubar ×1
pygtk ×1
python ×1
qt ×1
quicklaunch ×1
tcl ×1
tk-toolkit ×1
ubuntu-12.04 ×1
ubuntu-13.10 ×1