我正在为ubuntu 12.04创建一个应用程序。我想要做的是在菜单栏中添加一个选项,当我们右键单击某个选项时会出现这个选项。
使其更清晰 -
单击该选项时,只需执行另一个应用程序并将所选数据发送到该应用程序。
我将使用Glade和python进行开发。
答案 0 :(得分:1)
你应该先了解一些关于林间空地和gtk的基础知识。以下是笔记:
1-On glade您可以使用菜单按钮创建菜单。
2 - 右键单击它,选择“编辑...”
3 - 从窗口中可以添加项目。(右侧部分显示菜单项的名称和类型,左侧部分显示所选项目的属性,下半部分显示可连接到菜单的信号项)
4-现在将菜单项与执行您想要的功能连接起来(单击该选项时,只需执行另一个应用程序并将所选数据发送到该应用程序。)
5-转到你的代码。像往常一样得到菜单。
self.menu = self.builder.get_object("menu")
6-在右键单击一个对象时弹出菜单,你应该将该对象与执行菜单的函数连接起来(假设它的名字是:on_button_press):
def on_button_press(self, treeview, event):
if event.button == 3:
x = int(event.x)
y = int(event.y)
time = event.time
pthinfo = treeview.get_path_at_pos(x, y)
if pthinfo is not None:
path, col, cellx, celly = pthinfo
treeview.grab_focus()
treeview.set_cursor( path, col, 0)
self.popupmenu.popup( None, None, None, event.button, time)
return True