最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用python3.5仿微軟記事本notepad

 更新時間:2016年06月15日 09:47:55   作者:jinx88  
這篇文章主要為大家詳細介紹了使用python3.5仿微軟記事本notepad的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了python3.5仿微軟記事本的具體代碼,供大家參考,具體內容如下

from tkinter import filedialog
import tkinter as tk
import tkinter.scrolledtext as tkst
from tkinter import messagebox
import fileinput
from tkinter import *
from os import *
import os
import time
 
t1 = []
root = None
 
def die():
 root.destroy()
 
def about():
 messagebox.showinfo(title = "當前版本為1.0,歡迎使用",message = "**作者:韓東\n**狀態(tài):繼續(xù)努力ing")
class editor:
 def __init__(self,rt):
  if rt == None:
   self.t = tk.Tk()
  else:
   self.t = tk.Toplevel(rt)
  self.t.title("文本編輯器%d" % (len(t1)+1))
  self.bar = tk.Menu(rt)
 
  self.filem = tk.Menu(self.bar)
  self.filem.add_separator()
  self.filem.add_command(label = "新建",command = self.neweditor)
  self.filem.add_separator()
  self.filem.add_command(label = "打開",command = self.openfile)
  self.filem.add_separator()
  self.filem.add_command(label = "保存",command = self.savefile)
  self.filem.add_separator()
  self.filem.add_command(label = "關閉",command = self.close)
  self.filem.add_separator()
  self.filem.add_command(label = "退出",command = die)
 
  self.editm = tk.Menu(self.bar)
  self.editm.add_separator()
  self.editm.add_command(label = "復制",command = self.copy)
  self.editm.add_separator()
  self.editm.add_command(label = "黏貼",command = self.paste)
  self.editm.add_separator()
  self.editm.add_command(label = "剪切",command = self.cut)
  self.editm.add_separator()
  self.editm.add_command(label = "刪除",command = self.delete_text)
  self.editm.add_separator()
  self.editm.add_command(label = "查找",command = self.find_char)
  self.editm.add_separator()
  self.editm.add_command(label = "全選",command = self.select_char_all)
 
 
  self.helpm = tk.Menu(self.bar)
  self.helpm.add_command(label = "關于",command = about)
  self.bar.add_cascade(label = "文件",menu = self.filem)
  self.bar.add_cascade(label = "編輯",menu = self.editm)
  self.bar.add_cascade(label = "幫助",menu = self.helpm)
   
  self.t.config(menu = self.bar)
 
  self.f = tk.Frame(self.t,width = 512)
  self.f.pack(expand =1)
 
  self.st = tkst.ScrolledText(self.t)
  self.st.pack(expand = 1)
 
 def close(self):
  self.t.destroy()
 def openfile(self):
  oname = filedialog.askopenfilename(filetypes = [("打開文件","*.txt")])
  if oname:
   for line in fileinput.input(oname):
    self.st.insert("1.0",line)
   self.t.title(oname)
 
 def savefile(self):
  sname = filedialog.asksaveasfilename(title = "保存好你的寶寶喲",filetypes = [("保存文件","*.txt")])
  if sname:
   ofp = open(sname,"a")
   ofp.write(self.st.get(1.0,tk.END))
   ofp.flush()
   ofp.close()
   self.t.title(sname)
 
 def neweditor(self):
  global root
  t1.append(editor(root))
 def copy(self):
  text = self.st.get(tk.SEL_FIRST,tk.SEL_LAST)
  self.st.clipboard_clear()
  self.st.clipboard_append(text)
 def paste(self):
  try:
   text = self.st.selection_get(selection = "CLIPBOARD")
   self.st.insert(tk.INSERT,text)
  except tk.TclError:
   pass
   
 def cut(self):
  text = self.st.get(tk.SEL_FIRST,tk.SEL_LAST)
  self.st.delete(tk.SEL_FIRST,tk.SEL_LAST)
  self.st.clipboard_clear()
  self.st.clipboard_append(text)
   
 def delete_text(self):
  self.st.delete(tk.SEL_FIRST,tk.SEL_LAST)
 
 def find_char(self):
  target = simpledialog.askstring("簡易文本編輯器","尋找字符串")
  if target:
   end = self.st.index(tk.END)
   endindex = end.split(".")
   end_line = int(endindex[0])
   end_column = int(endindex[1])
   pos_line =1
   pos_column=0
   length =len(target)
   while pos_line <= end_line :
    if pos_line == end_line and pos_column +length > end_column:
     break
    elif pos_line < end_line and pos_column + length >100:
     pos_line = pos_line + 1
     pos_column = 100 - (pos_column + length)
     if pos_column > end_column:
      break
    else:
     pos = str(pos_line)+"."+str(pos_column)
     where = self.st.search(target,pos,tk.END)
     if where:
      print(where)
      where1 =where.split(".")
      sele_end_col = str(int(where1[1])+length)
      sele = where1[0] + "."+ sele_end_col
      self.st.tag_add(tk.SEL,where,sele)
      self.st.mark_set(tk.INSERT,sele)
      self.st.see(tk.INSERT)
      #self.st.focus()
     
      again = messagebox.askokcancel(title = "繼續(xù)查詢么")
      if again:
       pos_line = int(where1[0])
       pos_column = int(sele_end_col)
      else:
       aa=messagebox.showinfo(title = "你終于還是放棄了我",message = "你放棄了我--!")
       if aa:
        sys.exit()
         
 
 def select_char_all(self):
  self.st.tag_add(tk.SEL,1.0,tk.END)
  self.st.see(tk.INSERT)
  self.st.focus()
if __name__ == "__main__":
 root = None
 t1.append(editor(root))
 root = t1[0].t
 root.mainloop()

以上就是本文的全部內容,希望對大家學習python程序設計有所幫助。

相關文章

  • python實現(xiàn)簡單坦克大戰(zhàn)

    python實現(xiàn)簡單坦克大戰(zhàn)

    這篇文章主要為大家詳細介紹了python實現(xiàn)簡單坦克大戰(zhàn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Python 移動光標位置的方法

    Python 移動光標位置的方法

    今天小編就為大家分享一篇Python 移動光標位置的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python解析文件示例

    python解析文件示例

    這篇文章主要介紹了python解析文本文件示例,大家參考使用吧
    2014-01-01
  • python中id函數(shù)運行方式

    python中id函數(shù)運行方式

    在本篇文章里小編給大家分享了關于python中id函數(shù)運行方式及相關實例,需要的朋友們可以參考下。
    2020-07-07
  • Scrapy-Redis結合POST請求獲取數(shù)據(jù)的方法示例

    Scrapy-Redis結合POST請求獲取數(shù)據(jù)的方法示例

    這篇文章主要給大家介紹了關于Scrapy-Redis結合POST請求獲取數(shù)據(jù)的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Scrapy-Redis具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-05-05
  • python的virtualenv虛擬環(huán)境常見問題和命令

    python的virtualenv虛擬環(huán)境常見問題和命令

    在Python中,venv是一個用于創(chuàng)建和管理虛擬環(huán)境的模塊,虛擬環(huán)境可以幫助你在項目之間隔離不同的Python包和依賴關系,這篇文章主要介紹了python的virtualenv虛擬環(huán)境常見問題和命令,需要的朋友可以參考下
    2024-07-07
  • Python實現(xiàn)多個圓和圓中圓的檢測

    Python實現(xiàn)多個圓和圓中圓的檢測

    這篇文章主要為大家詳細介紹了Python如何實現(xiàn)多個圓檢測和圓中圓的檢測,文中的實現(xiàn)方法講解詳細,具有一定的借鑒價值,需要的可以參考一下
    2022-11-11
  • 對python 判斷數(shù)字是否小于0的方法詳解

    對python 判斷數(shù)字是否小于0的方法詳解

    今天小編就為大家分享一篇對python 判斷數(shù)字是否小于0的方法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python 定時器,實現(xiàn)每天凌晨3點執(zhí)行的方法

    python 定時器,實現(xiàn)每天凌晨3點執(zhí)行的方法

    今天小編就為大家分享一篇python 定時器,實現(xiàn)每天凌晨3點執(zhí)行的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • Python中turtle庫常用代碼匯總

    Python中turtle庫常用代碼匯總

    Turtle庫是Python語言中一個很流行的繪制圖像的函數(shù)庫,下面這篇文章主要給大家介紹了關于Python中turtle庫常用代碼的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-09-09

最新評論

林西县| 米脂县| 关岭| 嵊泗县| 赣榆县| 鄂托克前旗| 英德市| 新昌县| 宝清县| 临城县| 双流县| 古田县| 定西市| 万源市| 团风县| 库尔勒市| 奇台县| 德阳市| 清原| 巴东县| 潜山县| 大新县| 西平县| 聊城市| 玉龙| 密云县| 无极县| 营口市| 古丈县| 凤凰县| 定安县| 个旧市| 巴林左旗| 江达县| 马边| 辽阳县| 德钦县| 平乐县| 京山县| 霍林郭勒市| 崇阳县|