首页 > 解决方案 > 如何在 tkinter 中嵌入 gnome-terminal?

问题描述

我正在制作一个简单的 Python 程序,我想在其中运行 gnome 终端。我做了一些研究,找到了这个答案,但我想嵌入 gnome 终端而不是 xterm。链接问题的答案使用xterm -intognome-terminal似乎没有可比的选择。

标签: pythontkinterterminal

解决方案


gnome-terminal 是一个 GTK 应用程序,Tkinter 创建 TCL 应用程序:两个库将以非常不同的方式与底层窗口管理器交互,并且可能存在一些冲突(例如,在处理/使用输入事件时)。

由于嵌入选项不存在,首先,我想说这是不可行的,但要在 tkinter 应用程序中设置原始帧缓冲区,并以某种方式路由 gnome 终端以在该帧缓冲区中使用模拟/包含的窗口管理器 -这至少比您可能正在寻找的任何答案复杂一个数量级。

相反,如果您想在终端应用程序中为您的应用程序用户提供一个原始外壳,并且不能简单地在另一个窗口中弹出它,则使用 GTK 而不是 tkinter 重新执行您的应用程序,然后签入如果主终端小部件可以在另一个应用程序中独立使用,则为 gnome-terminal 开发文档/源代码。


推荐阅读