如何在 Tkinter 记事本中添加 'Save'、'Copy' 和 'Paste'?

How can I add 'Save', 'Copy', and 'Paste' in Tkinter Notepad?

我正在学习 (Tkinter)Python。 我想在名为 'Notepad' 的 tkinter 应用程序中添加 'Save'、'Copy' 和 'Paste' 功能 这是我的代码:

from tkinter import *
import os


window=Tk()

window.title("Simple Notepad")

def save():
    if t1_value.get() == "":
        t1.insert(END, "Please add text to save it")
    else:
        t1_value.get().save("New-file-1.txt")


t1_value=StringVar()
t1=Text(window)
t1.grid(row=0,column=0,columnspan=6,padx=7,pady=7)

b1=Button(window,text="Close",width=15,command=window.destroy)
b1.grid(row=1,column=0,padx=7,pady=7)

b2=Button(window,text="Copy",width=15)
b2.grid(row=1,column=1,padx=7,pady=7)

b3=Button(window,text="Paste",width=15)
b3.grid(row=1,column=2,padx=7,pady=7)

b4=Button(window,text="Save",width=15,command=save)
b4.grid(row=1,column=3,padx=7,pady=7)

window.mainloop()

上面的“保存”功能不起作用!

请告诉我如何将以上这些功能添加到这个简单的 Tkinter 记事本中!

您可以使用 pyperclip 库从剪贴板复制和粘贴。

import pyperclip as cb
.
.
button = tk.Button(root, text='Copy',
                      command=lambda: cb.copy(field['text']))
.
.

您想使记事本可以加载和保存。正确的? 我认为使用 writeread with 函数更适合您。 首先,你必须检查文件名,然后定义保存和打开功能

filename='mynote.txt'

def open_file():
    if os.path.isfile(filename) :
        with open('mynote.txt', 'r', encoding='utf8') as mynote_read:
            t1.delete('1.0',END) 
            t1.insert(END, mynote_read.read())
            t1.see(END)
def save_file():
    with open('mynote.txt','w',encoding='utf8') as mynote_write:
        mynote_write.write(t1.get('1.0',END))

        t1.delete('1.0',END)
        mynote_write.close()