我有两个.py文件。如何将一个程序的多行输出转换为另一个程序的GUI的tkinter文本?

时间:2016-09-05 09:39:15

标签: python python-2.7 python-3.x user-interface tkinter

GUI包含一个运行按钮,应该按照用户需要的次数运行第一个程序。在tkinter文本中显示输出。

我的代码(第二个.py文件):

from tkinter import*
from tkinter import ttk
import Random Game

root = Tk()
root.title("Random Game 1.0")

quote = "Long \nRandom \nText \nGenerated \nBy \nRandom Function \nAnd \nControl Structures"

frame = Frame(root)

labelText = StringVar()

label = Label(frame, textvariable=labelText).pack()
button = Button(frame, text="Click to Run").pack()

labelText.set("Random Game 1.0")
Label(root, text ="")

T = Text(root)

frame.pack()

T.pack()
T.insert(END, quote)

root.mainloop()

我希望每次在另一个(第二个程序)的tkinter文本中随机输出第一个程序,而不是上面代码中提到的引用行。

1 个答案:

答案 0 :(得分:1)

将第一个程序输出到txt文件。

通过检查上次修改时间,从txt文件读入tkinter GUI,以避免互斥问题。

因此:

# Prog 1:

file = open("log.txt", "w")
# code that writes there

# Prog 2:

file = open("log.txt", "r")
# use data to show in the tkinter with its mainloop for example
# in mainloop()...
#    .....
     if other_prog_has_written_something_new  :
         data = file.readlines()
         useDataInGUI(data)