用户:
liuzhiyu查看:0 回复:1 评论:0 创建时间:2021-02-11T11:22:56
from tkinter import*
from tkinter import scrolledtext,filedialog,messagebox,simpledialog
import sys
tex={'中文':['关于','文字编辑器','文字编辑器','文件','打开','保存','退出','其它','切换语言','替换','输入要替换的文字','替换为','编辑'],
'繁體中文':['關於','文字編輯器','文字編輯器','檔案','打開','保存','退出','其它','切換語言','替換','輸入要替換的文字','替換為','編輯'],
'Français':['À propos de l\'éditeur de texte','Éditeur de texte','Éditeur de texte','Ouvre','Économies','Exportations','Autres','Changer de langue','Remplacer','Saisissez le','texte à remplacer','Remplacer','Édition'],
'日本語':['について','テキストエディタ','テキストエディタ','ファイル','開く','保存','終了','その他','言語の切り替え','置換','入力を置き換えるテキスト','に置き換える','編集'],
'english':['About','text editor','Text editor','File','Open','Save','Exit','other','change language','replace ',' enter text to replace ',' replace with ','edit','save to','edit'],
'عربي ،':['عبير','محرر النصوص','محرر النصوص','فايل','فتح','حفظ','انسحب','أخرى','تبديل اللغة','بديل','أدخل النص إلى ستبدال','استبدال','تحري']}
#language_code=['zh-cn','en','zh-tw','fe']
#language_number=1
def open_():
file=filedialog.askopenfile(mode = 'r')
if file != None:
text.delete('1.0', END)
text.insert('1.0', file.read())
file.close()
def save():
file=filedialog.askopenfile(mode = 'w')
if file != None:
file.write(text.get('1.0', END))
file.close()
def about():
messagebox.showinfo(tex[language][0],tex[language][1])
def exit():
sys.exit(0)
def replace():
global text
a=simpledialog.askstring (tex[language][9],tex[language][10])
b=simpledialog.askstring (tex[language][9],tex[language][11])
if a==None or b==None or a=='' and b=='':
messagebox.showinfo('error','code:001')
else:
TEXT=text.get (0.0, END).replace (a, b)
text.delete ('1.0', END)
text.insert ('1.0', TEXT)
'''
def change():
global language,language_code,language_number
language_number+=1
language_number%=len(language_code)
language=language_code[language_number]
'''
root_win=Tk()
language='中文'#simpledialog.askstring ('','请选择语言\nPlease select language\nVeuillez sélectionner une langue\nالرجاء اختيار اللغة\n言語を選択してください\n請選擇語言')
root_win.title(tex[language][2])
main_menu=Menu(root_win)
root_win.config(menu=main_menu)
file_menu=Menu(main_menu,tearoff=0)
main_menu.add_cascade (label=tex[language][3],menu=file_menu)
file_menu.add_command (label=tex[language][4],command=open_)
file_menu.add_command (label=tex[language][5],command=save)
file_menu.add_separator()
file_menu.add_command (label=tex[language][6],command=exit)
about_menu=Menu (main_menu,tearoff=0)
main_menu.add_cascade (label=tex[language][7],menu=about_menu)
about_menu.add_command (label=tex[language][0],command=about)
'''
about_menu.add_command(label=tex[language][8],command=change)
'''
c=Menu(main_menu,tearoff=0)
main_menu.add_cascade(label=tex[language][12],menu=c)
c.add_command(label=tex[language][9],command=replace)
text=scrolledtext.ScrolledText (root_win,width=80,height=30)
text.pack (fill='both',expand='yes')
root_win.mainloop()
liuzhiyu# -*- coding: utf-8 -*-
from tkinter import*
from tkinter import scrolledtext,filedialog,messagebox,simpledialog,font
import sys
root=Tk()
tex={'中文':['关于','文字编辑器','文字编辑器','文件','打开','保存','退出','其它','切换语言','替换','输入要替换的文字','替换为','编辑','放大/缩小','选择字体','确定','大小',],
'繁體中文':['關於','文字編輯器','文字編輯器','檔案','打開','保存','退出','其它','切換語言','替換','輸入要替換的文字','替換為','編輯','放大/缩小','选择字体','确定',],
'Français':['À propos de l\'éditeur de texte','Éditeur de texte','Éditeur de texte','Ouvre','Économies','Exportations','Autres','Changer de langue','Remplacer','Saisissez le','texte à remplacer','Remplacer','Édition','放大/缩小','选择字体','确定',],
'日本語':['について','テキストエディタ','テキストエディタ','ファイル','開く','保存','終了','その他','言語の切り替え','置換','入力を置き換えるテキスト','に置き換える','編集','放大/缩小','选择字体','确定',],
'english':['About','text editor','Text editor','File','Open','Save','Exit','other','change language','replace ',' enter text to replace ',' replace with ','edit','save to','edit','放大/缩小','选择字体','确定',],
'عربي ،':['عبير','محرر النصوص','محرر النصوص','فايل','فتح','حفظ','انسحب','أخرى','تبديل اللغة','بديل','أدخل النص إلى ستبدال','استبدال','تحري']}
bigSize=not True
def open_():
file=filedialog.askopenfile(mode = 'r')
if file != None:
Text.delete('1.0', END)
Text.insert('1.0', file.read())
file.close()
def save():
file=filedialog.askopenfile(mode = 'w')
if file != None:
file.write(Text.get('1.0', END))
file.close()
def about():
messagebox.showinfo(tex[language][0],tex[language][1])
def exit():
root.destroy()
sys.exit(0)
def replace():
global Text
a=simpledialog.askstring(tex[language][9],tex[language][10])
b=simpledialog.askstring(tex[language][9],tex[language][11])
TEXT=Text.get (0.0,END).replace (a, b)
Text.delete ('1.0', END)
Text.insert ('1.0',TEXT)
def size():
global bigSize
bigSize=not bigSize
root.attributes('-fullscreen',bigSize)
def setFont_fontList():
global fontList,fontSet,text,textSize,Text,TextSize
try:
FONT=font.families()[fontList.curselection()[0]]
Text['font']=(FONT,textSize.get())
except:
FONT=fontList.curselection()[0]
Text['font']=(FONT,textSize.get())
fontSet.withdraw()
def showFontList():
global fontSet,fontList,textSize,TextSize
fontSet=Tk()
fontSet.attributes('-toolwindow',True)
fontSet.resizable(0,0)
fontList=Listbox(fontSet,setgrid=True,width=30,height=20,xscrollcommand=True)
textSize=Scale(master=fontSet,label=tex[language][16],from_=5 ,to=40, length=200,sliderrelief= 'ridge',tickinterval=5)
fontList.grid(row=0,column=0)
textSize.grid(row=0,column=1)
textSize.set(10)
for i in font.families():
fontList.insert("end", i)
okButton = Button(fontSet, text =tex[language][15], command = setFont_fontList,default='normal',relief= 'flat')
okButton.grid(row=1,column=0,columnspan=2)
def callback():
root.destroy()
sys.exit(0)
language='中文'
root.title(tex[language][2])
root.geometry('喵0x480')
root.attributes('-fullscreen',not True)
root.protocol("WM_DELETE_WINDOW", callback)
main_menu=Menu(root)
root.config(menu=main_menu)
file_menu=Menu(main_menu,tearoff=0)
main_menu.add_cascade (label=tex[language][3],menu=file_menu)
file_menu.add_command (label=tex[language][4],command=open_)
file_menu.add_command (label=tex[language][5],command=save)
file_menu.add_separator()
file_menu.add_command (label=tex[language][6],command=exit)
other_menu=Menu (main_menu,tearoff=0)
main_menu.add_cascade (label=tex[language][7],menu=other_menu)
other_menu.add_command (label=tex[language][0],command=about)
other_menu.add_command(label=tex[language][13],command=size)
other_menu.add_command(label=tex[language][14],command=showFontList)
c=Menu(main_menu,tearoff=0)
main_menu.add_cascade(label=tex[language][12],menu=c)
c.add_command(label=tex[language][9],command=replace)
Text=scrolledtext.ScrolledText (root,width=80,height=30,font=('no font', 10))
Text.pack (fill='both',expand='yes')
root.mainloop()
点赞0
评论