如何在Tkinter小部件中获取cmd

zaj*_*cev 5 python cmd tkinter

我正在创建Tkinter GUI并希望将Windows CMD添加到tkinter小部件中.我想用console来连接数据库.我做了一些研究,发现只有pyconsole模块,但有一些错误:

  • cls不会按照你的期望做;
  • 编辑不会显示编辑器(尝试开始编辑);
  • 提示任何失败;
  • color命令没有实现;
  • 也不支持伟大的^ C(它实际上复制文本,而不是中断进程).

特别是^ C命令ommited是我想运行的sql脚本的巨大限制.

我可以像这样打开控制台:

Popen(["cmd.exe"], creationflags=CREATE_NEW_CONSOLE)
Run Code Online (Sandbox Code Playgroud)

但是使用这种方法我不知道如何与GUI交互(甚至可能吗?)

我的Text小部件也可以从命令行读取输出,但我还需要在该命令行中写入,而不仅仅是读取它...

是否有可能将常规CMD放入Tkinter小部件中,这将与GUI中的其他小部件做出反应?

所需的行为将是右侧的CMD控制台,如下图所示(在tkinter窗口中),它将与左侧的列表框进行交互.我不是在寻找确切的代码(这就是为什么我的代码没有在这里说明),而是方法/解决方案如何将CMD放入tkinter.

照片: 在此输入图像描述 在此输入图像描述

谢谢

洪扎

小智 1

我认为你可以使用 Entry 来输入你想要执行的命令。然后您可以使用subprocess.runsubprocess.Popen来执行命令,并使用文本或更好的tkinter.scrolledtext.ScrolledText小部件来显示结果。