Python Forum
How to show terminal output in GUI
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
How to show terminal output in GUI
#1
Hi There,
I am looking for a easily way to show my terminal output directly in the created GUI. My code looks as follows:
import sys

from tkinter import *

def TimesTable():
    print("\n")
    for x in range(1,13):
        m = int(EnterTable.get())
        print('\t\t', (x), ' x ',(m), ' = ', (x * m),)

Multiply = Tk()
Multiply.geometry('250x500+700+200')
Multiply.title('Multiplication Table')

EnterTable = StringVar()

label1=Label(Multiply, text='Multiplication Times Table', font=30, fg='Black').grid(row=1, column=6)
label1=Label(Multiply,text='                                         ').grid(row=2,column=6)
entry5=Entry(Multiply, textvariable=EnterTable, justify='center').grid(row=3, column=6)
label1=Label(Multiply,text='                                         ').grid(row=4,column=6)            

button1=Button(Multiply, text='Times Table', command=TimesTable).grid(row=5,column=6)
label1=Label(Multiply,text='                                         ').grid(row=6,column=6)        
QUIT=Button(Multiply,text='Quit', fg='Red', command=Multiply.destroy).grid(row=7,column=6)

Multiply.mainloop()
Has anyone a good solution for this?
Thanks a lot,
Rubberduck
Reply
#2
You can use contextlib redirect. I use this in my Qt based Python console.

https://python-forum.io/thread-25117.html
Reply
#3
Thanks a lot @deanhystad

I already could solve it by adding two to tree lines code. With this solution I am happy for the moment.

import sys

from tkinter import *

def TimesTable():
    print("\n")
    result = "Result"
    for x in range(1,13):
        m = int(EnterTable.get())
        print('\t\t', (x), ' x ',(m), ' = ', (x * m),)
        result = result + '\t\t' + str(x) + ' x ' + str(m)+  ' = ' + str(x * m) + "\n"
    result=Label(Multiply, text=result, justify='left').grid(row=9, column=6)


Multiply = Tk()
Multiply.geometry('250x500+700+200')
Multiply.title('Multiplication Table')

EnterTable = StringVar()

label1=Label(Multiply, text='Multiplication Times Table', font=30, fg='Black').grid(row=1, column=6)
label1=Label(Multiply,text='                                         ').grid(row=2,column=6)
entry5=Entry(Multiply, textvariable=EnterTable, justify='center').grid(row=3, column=6)
label1=Label(Multiply,text='                                         ').grid(row=4,column=6)            

button1=Button(Multiply, text='Times Table', command=TimesTable).grid(row=5,column=6)
label1=Label(Multiply,text='                                         ').grid(row=6,column=6)        
QUIT=Button(Multiply,text='Quit', fg='Red', command=Multiply.destroy).grid(row=7,column=6)
label1=Label(Multiply,text='                                         ').grid(row=8,column=6)        
result=Label(Multiply, text="Show result by insert a value", justify='left').grid(row=9, column=6)
label1=Label(Multiply,text='                                         ').grid(row=10,column=6)        


Multiply.mainloop()
Best Wishes,
Rubberduck
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Tkinter Shell Terminal Or Shell Output sweetthdevil 5 8,761 Feb-03-2024, 02:51 PM
Last Post: Gribouillis

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020