0

我正在编写一个扩展程序,它在弹出窗口上显示两个项目(“Hello”和“Goodbye”)。

我想要做的是,当用户单击其中一项时,插入相应的文本。

例如:我在 gedit 上,我想插入“Hello”。所以我打开扩展程序,然后单击“Hello”,它出现在 gedit 上。

这是当前代码:

this._menucontent = null;

this._mymenu = new PopupMenu.PopupMenuItem(this._menucontent, { reactive: true });

item = new PopupMenu.PopupMenuItem(_("Hello"));
this.menu.addMenuItem(item);
item = new PopupMenu.PopupMenuItem(_("Goodbye"));
this.menu.addMenuItem(item);

有人可以帮助我吗?

4

1 回答 1

0

首先,您需要连接到可点击菜单项的发射信号,在本例中为“激活”信号:

    item.connect('activate', _FunctionToCall);

然后在函数中,您需要调用某种“粘贴”操作来插入文本。Gnome3 扩展“下拉终端”具有从剪贴板粘贴文本的功能,因此查看它的代码可能会给您一个提示:

github/dropdownterminal terminal.js

它使用gi.Gtk与终端窗口进行交互。

于 2014-11-24T21:03:06.600 回答