欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python基于Tkinter庫實現(xiàn)簡單文本編輯器實例

 更新時間:2015年05月05日 12:14:43   作者:feige  
這篇文章主要介紹了python基于Tkinter庫實現(xiàn)簡單文本編輯器,實例分析了Python使用Tkinter庫實現(xiàn)簡單桌面應(yīng)用程序的技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了python基于Tkinter庫實現(xiàn)簡單文本編輯器的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:

## {{{ http://code.activestate.com/recipes/578568/ (r1)
from Tkinter import * 
from tkSimpleDialog import askstring
from tkFileDialog  import asksaveasfilename
from tkMessageBox import askokcancel     
class Quitter(Frame):            
  def __init__(self, parent=None):     
    Frame.__init__(self, parent)
    self.pack()
    widget = Button(self, text='Quit', command=self.quit)
    widget.pack(expand=YES, fill=BOTH, side=LEFT)
  def quit(self):
    ans = askokcancel('Verify exit', "Really quit?")
    if ans: Frame.quit(self)
class ScrolledText(Frame):
  def __init__(self, parent=None, text='', file=None):
    Frame.__init__(self, parent)
    self.pack(expand=YES, fill=BOTH)        
    self.makewidgets()
    self.settext(text, file)
  def makewidgets(self):
    sbar = Scrollbar(self)
    text = Text(self, relief=SUNKEN)
    sbar.config(command=text.yview)         
    text.config(yscrollcommand=sbar.set)      
    sbar.pack(side=RIGHT, fill=Y)          
    text.pack(side=LEFT, expand=YES, fill=BOTH)   
    self.text = text
  def settext(self, text='', file=None):
    if file: 
      text = open(file, 'r').read()
    self.text.delete('1.0', END)          
    self.text.insert('1.0', text)         
    self.text.mark_set(INSERT, '1.0')       
    self.text.focus()                
  def gettext(self):                
    return self.text.get('1.0', END+'-1c')     
class SimpleEditor(ScrolledText):            
  def __init__(self, parent=None, file=None): 
    frm = Frame(parent)
    frm.pack(fill=X)
    Button(frm, text='Save', command=self.onSave).pack(side=LEFT)
    Button(frm, text='Cut',  command=self.onCut).pack(side=LEFT)
    Button(frm, text='Paste', command=self.onPaste).pack(side=LEFT)
    Button(frm, text='Find', command=self.onFind).pack(side=LEFT)
    Quitter(frm).pack(side=LEFT)
    ScrolledText.__init__(self, parent, file=file) 
    self.text.config(font=('courier', 9, 'normal'))
  def onSave(self):
    filename = asksaveasfilename()
    if filename:
      alltext = self.gettext()           
      open(filename, 'w').write(alltext)     
  def onCut(self):
    text = self.text.get(SEL_FIRST, SEL_LAST)    
    self.text.delete(SEL_FIRST, SEL_LAST)      
    self.clipboard_clear()       
    self.clipboard_append(text)
  def onPaste(self):                  
    try:
      text = self.selection_get(selection='CLIPBOARD')
      self.text.insert(INSERT, text)
    except TclError:
      pass                   
  def onFind(self):
    target = askstring('SimpleEditor', 'Search String?')
    if target:
      where = self.text.search(target, INSERT, END) 
      if where:                  
        print where
        pastit = where + ('+%dc' % len(target))  
        #self.text.tag_remove(SEL, '1.0', END)   
        self.text.tag_add(SEL, where, pastit)   
        self.text.mark_set(INSERT, pastit)     
        self.text.see(INSERT)          
        self.text.focus()            
if __name__ == '__main__':
  try:
    SimpleEditor(file=sys.argv[1]).mainloop()  
  except IndexError:
    SimpleEditor().mainloop()

希望本文所述對大家的Python程序設(shè)計有所幫助。

相關(guān)文章

  • python切換hosts文件代碼示例

    python切換hosts文件代碼示例

    開發(fā)或者測試網(wǎng)站程序時,我們很多時候都會遇到多個hosts文件來回切換,windows的hosts文件目錄比較深,麻煩,因此,用python寫了個小腳本來簡化此功能
    2013-12-12
  • Docker如何部署Python項目的實現(xiàn)詳解

    Docker如何部署Python項目的實現(xiàn)詳解

    這篇文章主要介紹了Docker如何部署Python項目的實現(xiàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • Python中for循環(huán)和while循環(huán)的基本使用方法

    Python中for循環(huán)和while循環(huán)的基本使用方法

    這篇文章主要介紹了Python中for循環(huán)和while循環(huán)的基本使用方法,是Python入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-08-08
  • Python入門教程(三十二)Python的命令行輸入

    Python入門教程(三十二)Python的命令行輸入

    這篇文章主要介紹了Python入門教程(三十二)Python的命令行輸入,Python是一門非常強(qiáng)大好用的語言,也有著易上手的特性,本文為入門教程,需要的朋友可以參考下
    2023-05-05
  • python使用requests實現(xiàn)發(fā)送帶文件請求功能

    python使用requests實現(xiàn)發(fā)送帶文件請求功能

    這篇文章主要介紹了python使用requests實現(xiàn)發(fā)送帶文件請求,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • Python模糊查詢本地文件夾去除文件后綴的實例(7行代碼)

    Python模糊查詢本地文件夾去除文件后綴的實例(7行代碼)

    下面小編就為大家?guī)硪黄狿ython模糊查詢本地文件夾去除文件后綴的實例(7行代碼) 。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • Python : turtle色彩控制實例詳解

    Python : turtle色彩控制實例詳解

    今天小編就為大家分享一篇Python : turtle色彩控制實例詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • python查看模塊,對象的函數(shù)方法

    python查看模塊,對象的函數(shù)方法

    今天小編就為大家分享一篇python查看模塊,對象的函數(shù)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python正則表達(dá)式中的量詞符號與組問題小結(jié)

    Python正則表達(dá)式中的量詞符號與組問題小結(jié)

    這篇文章主要介紹了Python正則表達(dá)式中的量詞符號與組問題小結(jié),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • python selenium自動上傳有贊單號的操作方法

    python selenium自動上傳有贊單號的操作方法

    這篇文章主要介紹了python selenium自動上傳有贊單號的操作代碼,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-07-07

最新評論