A simple text or file viewer component : Text « Tkinker « Python Tutorial






A simple text or file viewer component
from Tkinter import * 
     
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')       
 
root = Tk()
try:
    st = ScrolledText(file=sys.argv[1])              
except IndexError:
    st = ScrolledText(text='Words\ngo here')         
def show(event): print repr(st.gettext())            
root.bind('<Key-Escape>', show)                      
root.mainloop()








18.30.Text
18.30.1.Set text backgroundSet text background
18.30.2.A simple text or file viewer componentA simple text or file viewer component
18.30.3.Disabled Text controlDisabled Text control
18.30.4.Turn Text control to a password input fieldTurn Text control to a password input field
18.30.5.Text with pre-set valueText with pre-set value