python通过Tkinter库实现的一个简单的文本编辑器源码

  

下边资料是关于python通过Tkinter库实现的一个简单的文本编辑器的内容。

  
 <代码>从tkSimpleDialog askstring进口
  从tkFileDialog进口asksaveasfilename
  
  从tkMessageBox进口askokcancel
  
  类懒人(帧):
  def __init__(自我,父=None):
  框架。__init__(自我、父母)
  self.pack ()
  小部件=按钮(自我、文本=按侵啊?命令=self.quit)
  小部件。包(扩大=YES,填补=,=左)
  def辞职(自我):
  ans=askokcancel(“验证退出”,“真的辞职吗?”)
  如果答:Frame.quit(自我)
  
  类ScrolledText(帧):
  def __init__(自我、父母=没有文本=" file=None):
  框架。__init__(自我、父母)
  自我。包(扩大=是的,填补=)
  self.makewidgets ()
  自我。settext(文本、文件)
  def makewidgets(自我):
  条形=滚动条(自我)
  文本=文本(自我,缓解=沉)
  sbar.config(命令=text.yview)
  text.config (yscrollcommand=sbar.set)
  条形。包(=正确,填补=Y)
  文本。包(=左,扩大=是的,填补=)
  自我。文本=文本
  def settext(自我、文本=" file=None):
  如果文件:
  文本=打开(文件,“r”) .read ()
  self.text.delete(“1.0”,结束)
  self.text.insert(“1.0”,文本)
  self.text。mark_set(插入、“1.0”)
  self.text.focus ()
  def gettext(自我):
  返回self.text.get(“1.0”,结束+ 1 c)
  
  类SimpleEditor (ScrolledText):
  def __init__(自我、父母=没有文件=None):
  纳=框架(父)
  frm.pack(填补=X)
  按钮(纳、文本=氨4妗泵?self.onSave) .pack(左端=)
  按钮(纳、文本=跋骷酢?命令=self.onCut) .pack(左端=)
  按钮(纳、文本=罢程泵?self.onPaste) .pack(左端=)
  按钮(纳、文本=⑾帧?self.onFind) .pack(左端=)
  轻易放弃的人(农场).pack(左端=)
  ScrolledText。__init__(自我、父母、文件=文件)
  self.text。配置(字体=(“信使”,9日'正常'))
  def onSave(自我):
  文件名=asksaveasfilename ()
  如果文件名:
  alltext=self.gettext ()
  open (filename ' w ') .write (alltext)
  def onCut(自我):=self.text文本。get (SEL_FIRST SEL_LAST)
  self.text.delete (SEL_FIRST SEL_LAST)
  self.clipboard_clear ()
  self.clipboard_append(文本)
  def onPaste(自我):
  试一试:
  选择文本=self.selection_get(=凹籼濉?
  self.text。插入(插入、文本)
  除了TclError:
  通过
  def onFind(自我):
  目标=askstring (“SimpleEditor”,“搜索字符串吗?”)
  如果目标:=self.text的地方。搜索(目标、插入、结束)
  如果地点:
  打印的地方
  pastit=, +(' + %直流' % len(目标))
  # self.text。tag_remove(选取,“1.0”,结束)
  self.text。tag_add(选取,pastit)
  self.text。pastit mark_set(插入)
  self.text.see(插入)
  self.text.focus ()
  
  if __name__==癬_main__”:
  试一试:
  SimpleEditor(文件=sys.argv [1]) .mainloop ()
  除了IndexError:
  .mainloop SimpleEditor()()  

python通过Tkinter库实现的一个简单的文本编辑器源码