Tkinter Text 新建文档

Tkinter Text 新建文档

在设计编辑程序时,有时候想要新建文档,这时编辑程序会将编辑区清空,以供编辑新的文档。它的设计方式如下。

(1)删除Text控件内容,可参考下列程序第6行。

(2)将窗口标题改为“Untitled”,可参考下列程序第7行。

示例1

在File菜单中增加New File命令。读者需注意第5~7行的新建文档的方法newFile。另外,在第30行在File菜单中建立New File命令。

from tkinter import * 
from tkinter.filedialog import asksaveasfilename

def newFile():
    text.delete("1.0",END)
    root.title("apidemos-new")

def saveAsFile():
    global filename
    textContent = text.get("1.0",END)

    filename = asksaveasfilename(defaultextension=".txt")
    print("The file path passed back is :   ",filename)
    if filename == "":
        return
    with open(filename,"w") as output:
        output.write(textContent)
        root.title(filename)
filename = "apidemos"
root = Tk() 
root.title(filename) 
root.geometry("300x180") 

menubar = Menu(root)          # 建立最上层菜单
# 建立菜单类别对象,并将此菜单命名为File
filemenu = Menu(menubar,tearoff=False)
menubar.add_cascade(label="File",menu=filemenu)
# 在File菜单内建立菜单列表
filemenu.add_command(label="New File",command=newFile)
filemenu.add_command(label="Save As",command=saveAsFile)
filemenu.add_separator()
filemenu.add_command(label="Exit",command=root.destroy)
root.config(menu=menubar)

# 建立Text 
text = Text(root,undo=True) 
text.pack(fill=BOTH,expand=True)
text.insert(END,"Five Hundred Miles\n")           # 插入时同时设置Tag
text.insert(END,"If you miss the rain I am on,\n")
text.insert(END,"You will knw that I am gone.\n")
text.insert(END,"You can hear the whistle blw\n")
text.insert(END,"A hunded miles,\n")

root.mainloop() 

输出:

Tkinter Text 新建文档

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程