Tkinter教程之Entry & Text 输入、文本框
#Entry用来输入单行文本 '''1.第一个Entry程序''' from tkinter import * root = Tk() Entry(root,text = 'input your text here').pack() #上面的代码目的是创建一个Entry对象,并在Entry上显示'input your text here',运行此代码,并没有看到文本的显示, # 由此可知与Lable和Button不同,Entry的text属性不可以设置Entry的文本 #2.在Entry中设定初始值,使用textvariable将变量与Entry绑定 e = StringVar() entry = Entry(root,textvariable = e,state='readonly',show='*') e.set('input your text here') #上面的例子中将变量e与Entry绑定,然后将e的值设置为'input your text here',程序运行时的初始值便设置了 entry.pack() #设置为只读Entry. #Entry的另一个比较有用的属性,设置为只读,不允许用户对它的值改变。 #设置state属性为'readonly' #设置为密码输入框 #将Entry作为一个密码输入框来使用,即不显示用户输入的内容值,用特定符号代替。使用用属性 #show来指定。 #text文本框 t = Text(root,width=20,height=20) t.pack() #向Text中添加文本 #insert方法添加文本内容 t.insert(1.0,'0123456789') t.insert(2.0,'\nABCDEFG') #insert的第一个参数为索引;第二个为添加的内容 t.insert(END,'hello') #这些函数使用了内置的mark:INSERT/CURRENT/END/SEL_FIRST/SEL_LAST #几个内置的mark: #INSERT:光标的插入点 #CURRENT:鼠标的当前位置所对应的字符位置 #END:这个Text buffer的最后一个字符 #SEL_FIRST:选中文本域的第一个字符,如果没有选中区域则会引发异常 #SEL_LAST:选中文本域的最后一个字符,如果没有选中区域则会引发 异常 #使用tag来指定文本的属性 #创建一个指定背景颜色的TAG t.tag_config('a',foreground = 'red') t.tag_config('b',foreground = 'blue') t.insert(1.0,'0123456789',('b','a')) # 使用tag_lower来降低b的级别 t.tag_lower('b') t.tag_add('b','2.5','2.end')#将第2行第6列至第二行行尾使用使用此tag # 获得1.0-2.3的文本 print(t.get('1.0','2.3')) # 自定义两个mark,并使用它们来获得文本块 t.mark_set('ab','2.5') t.mark_set('cd',END) print(t.get('ab','cd')) # 删除tag 'b',注意这个操作是在tag_add之后进行的。 t.tag_delete('b') # 删除(1.0 - 4.0)的文本 t.delete('1.0','2.1') root.mainloop()
运行结果:
评论