我是python的新手,正在尝试创建一个程序,该程序除其他外应将终端输出打印到Tkinter GUI。
例如ping命令或任何其他shell命令或变量print的输出。
我已经在网上搜索了解决方案,但没有找到任何简单的方法。
也许我丢失了某些东西,或者还有其他方法可以在python中打印终端输出
预先感谢
答案 0 :(得分:0)
您可以使用子流程模块和Canvas小部件将Shell命令的结果打印到屏幕上
from tkinter import *
import subprocess
root = Tk()
frame = Frame(root,width=1024, height=768)
frame.grid(row=0, column=0)
c = Canvas(frame, bg='blue', width=800, height=600)
c.config(scrollregion=(0, 0, 800, 3000))
sbar = Scrollbar(frame)
sbar.config(command=c.yview)
c.config(yscrollcommand=sbar.set)
sbar.pack(side=RIGHT, fill=Y)
c.pack(side=LEFT, expand=True, fill=BOTH)
String1 = subprocess.check_output('chcp 437 && ping /?', shell=True)
c.create_text(400, 0, anchor=N, fill='orange', font='Times 15', text=String1)
# c.create_text(750, 300, anchor=W, fill='orange', font='Times 28', text='List')
button = Button(root, text="Quit", command=root.destroy)
c.create_window(400, 0, anchor=N, window=button)
mainloop()