代码

import webbrowser
from io import TextIOWrapper
from tkinter import  *
from tkinter.filedialog import  *
from tkinter.colorchooser import  *
from tkinter.simpledialog import *
from tkinter.messagebox import *
from datetime import datetimeclass frame(Frame):def __init__(self,master=None):super().__init__(master)self.master=masterself.filename=Noneself.textpad=Noneself.pack()self.mai()def mai(self):#创建菜单menubar=Menu(root)#创建子菜单menuFile=Menu(menubar)menuEdit=Menu(menubar)menuColor = Menu(menubar)menuFont = Menu(menubar)menuHelp=Menu(menubar)#将子菜单添加到主菜单menubar.add_cascade(label="文件(F)",menu=menuFile)menubar.add_cascade(label="编辑(E)",menu=menuEdit)menubar.add_cascade(label="颜色(C)",menu=menuColor)menubar.add_cascade(label="字体(O)",menu=menuFont)menubar.add_cascade(label="帮助(H)",menu=menuHelp)#文件menuFile.add_command(label="新建",accelerator="ctrl+n",command=self.File1)menuFile.add_command(label="打开",accelerator="ctrl+o",command=self.File2)menuFile.add_command(label="保存",accelerator="ctrl+s",command=self.File3)menuFile.add_command(label="另存",accelerator="ctrl+e",command=self.File4)menuFile.add_separator()menuFile.add_command(label="退出",accelerator="ctrl+q",command=self.File5)#编辑menuEdit.add_command(label="搜索",accelerator="ctrl+f",command=self.Edit1)menuEdit.add_command(label="替换",accelerator="ctrl+h",command=self.Edit2)menuEdit.add_command(label="插入图片", accelerator="ctrl+b", command=self.Edit3)menuEdit.add_separator()menuEdit.add_command(label="当前时间",accelerator="F5",command=self.Edit4)#颜色menuColor.add_command(label="背景颜色",accelerator="ctrl+1",command=self.Color1)menuColor.add_command(label="字体颜色",accelerator="ctrl+2",command=self.Color2)menuColor.add_command(label="字体外描边",accelerator="ctrl+3",command=self.Color3)menuColor.add_separator()menuColor.add_command(label="字体内描边",accelerator="ctrl+4",command=self.Color4)#字体menuFont.add_command(label="字体大小",accelerator="ctrl+5",command=self.Font1)menuFont.add_separator()menuFont.add_command(label="字体类型",accelerator="ctrl+6",command=self.Font2)#帮助menuHelp.add_command(label="帮助网页",accelerator="ctrl+7",command=self.Help1)menuHelp.add_command(label="关于",accelerator="ctrl+8",command=self.Help2)root.bind("<Control-n>",lambda event:self.File1())root.bind("<Control-o>",lambda event:self.File2())root.bind("<Control-s>",lambda event:self.File3())root.bind("<Control-e>",lambda event:self.File4())root.bind("<Control-q>",lambda event:self.File5())root.bind("<Control-f>",lambda event:self.Edit1())root.bind("<Control-h>",lambda event:self.Edit2())root.bind("<Control-b>",lambda event:self.Edit3())root.bind("<KeyPress-F5>",lambda event:self.Edit4())root.bind("<Control-1>", lambda event: self.Color1())root.bind("<Control-2>", lambda event: self.Color2())root.bind("<Control-3>", lambda event: self.Color3())root.bind("<Control-4>", lambda event: self.Color4())root.bind("<Control-5>", lambda event: self.Font1())root.bind("<Control-6>", lambda event: self.Font2())root.bind("<Control-7>", lambda event: self.Help1())root.bind("<Control-8>", lambda event: self.Help2())root["menu"]=menubarself.textpad=Text(root,width=660,height=630)self.textpad.pack()#文件方法def File1(self):self.filename=asksaveasfile(title="选择新建路径",defaultextension=".txt",initialfile="未命名.txt")def File2(self):self.textpad.delete(1.0,END)self.filename=askopenfilename()with open(f"{self.filename}")as f:self.textpad.insert(INSERT,f.read())#漏洞def File3(self):if (type(self.filename)==TextIOWrapper):with open(self.filename.name, "w+")as f:f.write(self.textpad.get(1.0, END))elif(type(self.filename)==str):with open(self.filename, "w+")as f:f.write(self.textpad.get(1.0, END))else:self.filename = asksaveasfile(title="选择保存路径", defaultextension=".txt", initialfile="未命名.txt")print(self.filename)with open(self.filename.name, "w+")as f:f.write(self.textpad.get(1.0, END))def File4(self):self.filename03 = asksaveasfile(title="选择另存路径", defaultextension=".txt", initialfile="未命名.txt")with open(f"{self.filename03.name}","w+")as f:f.write(self.textpad.get(1.0,END))def File5(self):self.quit()#编辑方法def Edit1(self):fan=askstring(title="请输入需要查找内容",prompt="请输入")if(fan in self.textpad.get(1.0,END)):messagebox.showinfo("查找结果", "查找内容存在")else:messagebox.showinfo("查找结果", "不好意思,查找内容不存在")def Edit2(self):self.ask = askstring(title="请输入替换前", prompt="请输入")if self.ask in self.textpad.get(1.0, END):self.ask01 = askstring(title="请输入替换后", prompt="请输入")aa=self.textpad.get(1.0, END).replace(f"{self.ask}",f"{self.ask01}")self.textpad.delete(1.0, END)self.textpad.insert(INSERT, aa)else:messagebox.showinfo("提示","不存在")def Edit3(self):my_photo = PhotoImage(file="almond_PNG17.png")self.textpad.image_create(END, image=my_photo)def Edit4(self):dt = datetime.now()self.textpad.insert(INSERT, dt.strftime( '%Y-%m-%d %I:%M:%S %p' ))#颜色方法def Color1(self):self.color=askcolor(title="请选择背景色")self.textpad["background"]=self.color[1]def Color2(self):self.color=askcolor(title="请选择字体颜色")self.textpad["foreground"]=self.color[1]def Color3(self):passdef Color4(self):pass#字体方法def Font1(self):root1=Tk()root1.geometry("250x100")self.size=Scale(root1, to=10, length=200, tickinterval=0.1, orient=HORIZONTAL, command=self.size1)self.size.pack()print(self.size)root1.mainloop()def size1(self,v):self.textpad["font"]=vprint(v)def Font2(self):self.size1("楷体")#帮助方法def Help1(self):webbrowser.open("http://localhost:8080/web_test/bootstrap/bb.jsp")def Help2(self):messagebox.showinfo("关于", "由ZGT开发,一切解释权归本人所有!")root=Tk()
root.geometry("400x400+100+100")
root.title("ZGT的记事本")
app=frame(master=root)
root.mainloop()

python实现记事本相关推荐

  1. Python版记事本源代码

    Python版记事本源代码,程序运行截图: import tkinter as tk import tkinter.scrolledtext as tkst import fileinput from ...

  2. python语言的记事本在哪_入门Python语言记事本03

    本文主要向大家介绍了入门Python语言记事本03,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断.比如,输入用户年龄, ...

  3. python windows记事本_pywinauto自动化操作记事本

    一.什么是pywinauto Pywinauto是基于Python开发的,用于操作Windows标准图形界面的自动化测试的脚本模块. 二.pywinauto可以用来做什么 1.可以应用在程序中,来解决 ...

  4. Python打开记事本

    使用 python 获取当前时间, 并在记事本中显示,方便复制 from datetime import datetime import os from datetime import datetim ...

  5. 怎么用python编写记事本_利用Python开发实现简单的记事本

    利用Python开发实现简单的记事本 最近想对 python 加深学习一下,同时也是想试着做一些东西,所以使用 python, 结合 Tkinter 来做一个简单的跨平台记事本.最终实现的记事本如下, ...

  6. python版记事本

    好久没有更新了,我这几天抽空编了一个python版的记事本.从上周日开始编(周一到周五没编

  7. python实现记事本的查找功能_Python + PyQt4 实现记事本功能

    第一步: PyQt4 Designer设计程序界面 该部分设计类同Visval Studio内的设计,改下各部件的objectName! 设计完保存为editor.ui   第二步: 将.ui文件编译 ...

  8. 记事本编写python程序

    1.建立一个文件夹,这里命名为python 2.在文件中创建一个记事本 3.在记事本中输入想是实现的代码  注意:符号要为英文符号! 4.将记事本命名后缀改为.py 5.在打开命令行输入窗口,这里可以 ...

  9. Python 之 os 模块常用操作

    我们知道,使用 Python 内置的库函数, open() 函数可以对文本文件进行读写操作,那么这是在文件层面上的操作,如果说我们想对文件夹进行增.删.改.查时,又该如何去做呢? Python 拥有强 ...

最新文章

  1. TCP/IP详解学习笔记(9)-TCP协议概述
  2. C#中有关数组和string引用类型或值类型的判断
  3. Windows 10 PowerCL 使用 VMwme-PowerCLI安装说明
  4. jaxws-webservice编程续
  5. WCF 调用webservice
  6. aspx,ascx和ashx使用小结
  7. 2.2基本算法之递归和自调用函数_一文学会递归解题
  8. SpringBoot—单元测试模板(controller层和service层)
  9. 小米9震撼发布!米粉大呼价格太良心 2999元起稳了吗?
  10. 如何改变php的语言变中文,yii2怎么设置切换语言
  11. Java判断奇数偶数-高效率
  12. Centos中安装svnserver
  13. 收费最低的云存储_柠檬云财税|柠檬云财务软件 V4.2.1电脑版下载
  14. OpenCV-Python教程:色彩空间变换(cvtColor)
  15. 计算机运行但屏幕黑屏,电脑显示器黑屏,教您电脑主机运行正常显示器黑屏怎么办...
  16. 【小程序】用canvas 实现一个简易的移动端名片可编辑小程序
  17. 转铁蛋白(Tf)修饰去氢骆驼蓬碱磁纳米脂质体/香豆素-6脂质体/多柔比星脂质体
  18. JAVA一些方法技巧
  19. 菜鸟的Vue基础快速入门
  20. anySdk的常规接入流程

热门文章

  1. 计算机专业大学生社会实践,计算机专业大学生社会实践报告
  2. Java数据结构与算法-SingleLinkedList单向链表插入,删除,查找,修改详解及代码
  3. Eclipse详解(一)
  4. 快讯:农作物精准育种技术的重大进展
  5. 为什么中国没有很多优秀的开源?看VUE的作者收入百万
  6. 【Windows】这台电脑无法运行 Windows 11 问题解决
  7. 网络变压器厂家不传之秘:10G网络滤波器不能消除的噪音是哪些?
  8. IDEA使用教程之常用配置
  9. Angular 表单验证
  10. ECG信号读出,检测QRS,P,T 波(小波去噪,并根据检测),基于BP辨识的神经网络...