Advertisement
Guest User

Untitled

a guest
Jan 15th, 2020
197
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.63 KB | None | 0 0
  1. from tkinter import *
  2. from tkinter.ttk import Combobox
  3. from tkinter import scrolledtext
  4. from tkinter import messagebox as mb
  5. import os
  6.  
  7.  
  8. def refresh():
  9.     titles = os.listdir()
  10.     S=(box.size() - 1)
  11.     box.delete(0,S)
  12.     for i in titles:
  13.         box.insert(END,i)
  14.  
  15. def btn1Pressed():
  16.     titles = os.listdir()
  17.     num = 1+ (len(titles))
  18.     txtf = 'New_Text_' + str(num)
  19.     thsFile = open(txtf, 'tw')
  20.     thsFile.close
  21.     refresh()
  22.  
  23.  
  24. def btn2Pressed():
  25.     index = box.curselection()
  26.     name = (box.get(index))
  27.    
  28.     os.remove(name)
  29.     S=(box.size() - 1)
  30.     refresh()
  31.  
  32.    
  33. def boxSelected(*args):
  34.     global L
  35.     text = txt.get(1.0, END)
  36.     name = (box.get(L))
  37.     f = open(name,'r+')
  38.     f.write(text)
  39.     f.close()
  40.    
  41.    
  42.     index = box.curselection()
  43.     name = (box.get(index))
  44.     title.configure(text=name)
  45.     f = open(name, 'r+')
  46.     text = f.read()
  47.     txt.delete(1.0, END)
  48.     txt.insert(0.0, text)
  49.  
  50.     L = index
  51.    
  52.  
  53.  
  54. def btnRenPressed():
  55.     index = box.curselection()
  56.    
  57.     ReW = Tk()  
  58.     ReW.title("Enter new name")
  59.     window.geometry('500x600')
  60.  
  61.     frameRename=Frame(ReW,bd=2)
  62.     frameButtons12=Frame(ReW,bd=2)
  63.     frameRename.pack(side='top')
  64.     frameButtons12.pack(side='bottom')
  65.  
  66.     entryRe=Entry(frameRename)
  67.    
  68.     entryRe.pack()
  69.    
  70.     compBut=Button(frameButtons12, text="Rename", command=lambda: BSave(entryRe))
  71.     compBut.pack(side="left")
  72.  
  73.     noButton=Button(frameButtons12, text="Exit", command=ReW.destroy)
  74.     noButton.pack(side='right')
  75.  
  76.     ReW.mainloop()
  77.  
  78. def BSave(entryRe):
  79.     nName = entryRe.get()
  80.     index = box.curselection()
  81.     name = (box.get(index))
  82.     os.rename(name,nName)      
  83.     refresh()
  84.  
  85.  
  86. f=open('config', 'r')
  87. f.close()
  88. os.chdir('texts')
  89. titles = os.listdir()
  90.  
  91.  
  92. L = 0
  93.  
  94.  
  95. window = Tk()  
  96. window.title("msin")
  97. window.geometry('600x800')
  98.  
  99. # Главный фрейм
  100. mainFrame=Frame(window,bd=5)
  101. mainFrame.pack(fill="both", expand="true")
  102. # Левый и правый фреймы
  103. leftFrame=Frame(mainFrame,bd=2)
  104. leftFrame.pack(side='left')
  105. rightFrame=Frame(mainFrame,bd=2)
  106. rightFrame.pack(side='right',fill="both", expand="true")
  107.  
  108. # Содержимое левого фрейма
  109. btnFrame=Frame(leftFrame,bd=2)
  110. boxFrame=Frame(leftFrame,bd=2)
  111.  
  112. # Содержимое правого фрейма
  113. txtFrame=Frame(rightFrame,bd=5)
  114. topFrame=Frame(rightFrame,bd=2)
  115. topFrame.pack(side='top')
  116.  
  117. # Содержимое верхнего фрейма
  118. titleFrame=Frame(topFrame,bd=2)
  119. titleFrame.pack(fill="both", expand="true")
  120.  
  121. # Содержимое заголовочного фрейма
  122. saveFrame=Frame(titleFrame,bd=2)
  123. saveFrame.pack(side='left',fill="both")
  124.  
  125. btnRen = Button(saveFrame, text="Rename",command=btnRenPressed)
  126. btnSave = Button(saveFrame, text="Save",command=btnRenPressed)
  127. btnRen.pack(side='left')
  128. btnSave.pack(side='right')
  129.  
  130. # Лейбл с полем ввода заголовка
  131. title = Label(titleFrame, width=50, bd=2)
  132. title.pack(fill="both", expand="true")
  133.  
  134.  
  135.  
  136. # Листбокс
  137. box = Listbox(boxFrame, bd=2, selectmode=BROWSE)
  138. for i in titles:
  139.     box.insert(END,i)
  140. box.bind('<<ListboxSelect>>', boxSelected)
  141. box.pack()
  142. boxFrame.pack(side='bottom')
  143.  
  144. # Кнопка
  145. btn1 = Button(btnFrame,text="New",command=btn1Pressed)
  146. btn1.pack(side='left')
  147.  
  148. btn2 = Button(btnFrame,text="Del",command=btn2Pressed)
  149. btn2.pack(side='right')
  150. btnFrame.pack(side='top')
  151.  
  152.  
  153. # Поле ввода текста
  154. txt = scrolledtext.ScrolledText(txtFrame, bd=2)
  155. txt.pack(fill="both", expand="true")
  156. txtFrame.pack(side="bottom",fill="both", expand="true")
  157.  
  158. refresh()
  159.  
  160.  
  161. window.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement