我想知道如何通过Tkinter GUI打开文件,例如在界面中有一个打开.txt文件的按钮。如果它加载到文本框中或者在文本编辑器中打开它只是想要打开它并不重要。最好在文本编辑器中打开。
def openInstruktion():
f= open("instruktioner.txt")
instruktionBtn = Button(root, text='Spelinstruktioner', command=openInstruktion)
instruktionBtn.grid(row=6, column=0)
我在网上搜索了一些答案,但大多数人都使用菜单栏。我希望它通过上面发布的按钮打开。
答案 0 :(得分:2)
因此,如果您想对文件执行某些操作,操作将在函数openInstruktion
中进行。
def openInstrucktion():
f= open("instruktioner.txt")
#t is a Text widget
t.insert(1.0, f.read())
或者如果你想用编辑器打开它:
def openInstrucktion():
os.system('emacs instrucktioner.txt')
答案 1 :(得分:2)
如果要使用默认程序打开文件,可以使用os模块:
def openInstruktion():
from os import startfile
startfile("c:\\path\\to\\file")
instruktionBtn = Button(root, text='Spelinstruktioner', command=openInstruktion)
instruktionBtn.grid(row=6, column=0)
或者,如果要使用特定程序打开它,请尝试使用子进程模块:
def openInstruktion():
from subprocess import call
call("notepad c:\\path\\to\\file")
instruktionBtn = Button(root, text='Spelinstruktioner', command=openInstruktion)
instruktionBtn.grid(row=6, column=0)
如果你想在文本框中打开它,你可以这样做:
file = open("c:\\path\\to\\file").read()
textbox.insert(0.0, file)
你最好的选择可能是在默认编辑器中打开它(用不同的程序打开它可能不是人们想要的,在文本框中打开它的图形很差)。
答案 2 :(得分:0)
如果要在默认编辑器中打开文件 (它总是最好只使用默认值)
def openInstrucktion():
os.system('start " " instruktioner.txt')
答案 3 :(得分:0)
def help():
readme = "F:\\yourpath\\readme.txt"
os.startfile(readme)
只需使用此功能,但首先在顶部执行import os
。