Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drop down menu python gtk vte是否有填充下拉菜单的方法?_Drop Down Menu_Gtk3_Vte - Fatal编程技术网

Drop down menu python gtk vte是否有填充下拉菜单的方法?

Drop down menu python gtk vte是否有填充下拉菜单的方法?,drop-down-menu,gtk3,vte,Drop Down Menu,Gtk3,Vte,编辑:看起来im\u append\u menuitems不是获取弹出菜单的功能。Vte继承自Gtk.Widget,因此获取菜单的方法可能是连接到鼠标右键并生成自定义菜单。我将对此进行调查,如果它有效,这将是答案。 我将gtk3与python一起使用 当打开用PythonGTK创建的vte窗口时,除了右键单击下拉菜单外,我可以完成人们期望从终端执行的所有正常操作 在C文档中有vte\u terminal\u im\u append\u menuitems() 我还没有试过,因为它需要一个GtkM

编辑:看起来im\u append\u menuitems不是获取弹出菜单的功能。Vte继承自Gtk.Widget,因此获取菜单的方法可能是连接到鼠标右键并生成自定义菜单。我将对此进行调查,如果它有效,这将是答案。

我将gtk3与python一起使用

当打开用PythonGTK创建的vte窗口时,除了右键单击下拉菜单外,我可以完成人们期望从终端执行的所有正常操作

在C文档中有vte\u terminal\u im\u append\u menuitems()

我还没有试过,因为它需要一个GtkMenuShell,我只使用了GtkMenu。所以我使用它可能会有困难

对于边缘情况,文档不是最好的,我使用的是python,它的绑定并不总是正确的。我在python中尝试过的一些抽象gtk类也给我带来了麻烦

我想知道是否有比GtkMenuShell更简单的方法

如果不是的话,一个GtkMenuShell的例子会有所帮助


与此同时,我将试着自己做这件事。如果我能很快找到代码,我会把它作为答案发布。

你有没有样本代码?我曾经使用python和vte,但那是很久以前的事了,我使用subprocess来执行命令行的任务,在python变量中获得结果时遇到了问题。看看你的答案,你似乎已经解决了这个问题。@Samundra我的答案在这里起作用了。我还没有尝试获取命令的结果,因为我还不需要它们。有一个get_text函数,您可以使用该函数获取所有文本,并使用split and len函数获取“\n”上拆分后的最后一行。@Samundra还有其他需要记住的内容。使用vte feedchild时,如果希望命令从python变量自动运行,可以在命令末尾附加/concat“\n”字符。@Samundra我将在代码中用更好的注释更新该答案。感谢您的更新。