txt文件编辑器(v5.0)

1、介绍:

环境:python3.8-3.10

导入包:win32api,win32con,tkinter,time,easygui,os,pynput,threading

废话不多说,先上源代码:

import win32api,win32con
import tkinter
import tkinter as tk
import tkinter.filedialog
import tkinter.messagebox
import tkinter.scrolledtext
import tkinter.colorchooser
import tkinter.simpledialog
import time
import easygui as g
import tkinter
import tkinter.messagebox
import os
#import virtkey
from pynput.keyboard import Key, Controller
from tkinter import *
from tkinter.scrolledtext import ScrolledText
from tkinter import messagebox
from threading import Thread
from tkinter.ttk import *

# ----------------------------------------一、创建窗口-------------------------------------------------
filename = ""  # 定义空文件名
win = tk.Tk()
win.title('WSL文件编辑器')
win["height"] = 400
win["width"] = 600
# ----------------------------------------特殊---------------------------------------------------------

def new():
    #os.startfile(".\WSL文件编辑器.py")
    os.startfile(os.path.basename(__file__))
def quit_exit():
    global filename
    if textChanged.get():
        yesno = tk.messagebox.askyesno(
            title="提醒", message="你想保存吗?")  # 询问框
        if yesno == tkinter.YES:
            if not filename:
                SaveAs()
            else:
                Save()
        else:
            exit()
            #win.destroy()
    else:
        exit()
        #win.destroy()
    exit()
    #win.destroy()

def popup(event):
    right.post(event.x_root,event.y_root)
    
# ---------------------------------------二、功能定义区---------------------------------------------

mylist=[]

# -----------------------------------------1.菜单栏 File-----------------------------------------------------------

textChanged = tk.IntVar(value=0)  # 字符串计数器

# 1.打开


def Open():
    global filename
    # 1.获取字符,是否保存原来的文档
    if textChanged.get():
        yesno = tk.messagebox.askyesno(
            title="提醒", message="你想保存吗?")  # 询问框

        if yesno == tkinter.YES:
            Save()
        #filename = tkinter.filedialog.askopenfilename(
        #    title="Open file", filetypes=[("Text files", "*.txt")])  # 打开路径框
        #filename = g.fileopenbox(default="*.txt")
    # 2.打开新的文档
    
    #filename = g.fileopenbox("打开","","*.txt")
    
    filename = tkinter.filedialog.askopenfilename(
        title="打开", filetypes=[("Text files", "*.txt")])  # 打开路径框
    if filename:
        mylist.append(filename)
        (filepath,tempfilename) = os.path.split(filename)
        (file_name,extension) = os.path.splitext(tempfilename)
        if filename!="":
            win.title('WSL文件编辑器-'+file_name)
        else:
            win.title('WSL文件编辑器')
        txtContent.delete(0.0, tk.END)  # 删除原来的文本
        #filename = tkinter.filedialog.askopenfilename(
        #    title="Open file", filetypes=[("Text files", "*.txt")])  # 打开路径框
        #filename = g.fileopenbox(default="*.txt")
        fp = open(filename, "rb")  # 读取文本
        txtContent.insert(tkinter.INSERT, "".join(
            fp.read().decode('GBK')))  # 解码插入到文本编辑器
        fp.close()  # 关闭指针
        textChanged.set(0)  # 字符串置0

# 2.保存


def Save():
    global filename
    if not filename:
        SaveAs()

    elif textChanged.get():
        fp = open(filename, "w")  # 创建文本
        fp.write(txtContent.get(0.0, tkinter.END))  # 将文本框的内容导入文件
        fp.close()  # 关闭
        #win32api.MessageBox(0, "保存完毕", "WSL文件编辑器·保存",win32con.MB_OK)
        textChanged.set(0)  # 计数器置0
      
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值