tkinter 常用控件使用方法
treeview
from tkinter import ttk
#设置show属性为 headings 即可隐藏首列。
tree = ttk.Treeview(root,columns=['1','2','3'],show='headings')
tree.column('1',width=100,anchor='center')
tree.column('2',width=100,anchor='center')
tree.column('3',width=100,anchor='center')
tree.heading('1',text='姓名')
tree.heading('2',text='成绩')
tree.insert('','end',values=['A','B','C'])#插入
[tree.delete(item) for item in tree.get_children() ] #清空
#获取条目值
def treeviewClick(event):#单击
print ('单击')
for item in tree.selection():
item_text = tree.item(item,"values")
print(item_text[0])#输出所选行的第一列的值
tree.bind('<ButtonRelease-1>', treeviewClick)#绑定单击离开事件===========
https://stackoverflow.com/questions/34849035/how-to-get-the-value-of-a-selected-treeview-item
综合使用: https://www.cnblogs.com/Tommy-Yu/p/4156014.html
用法杂记:https://www.cnblogs.com/wumac/p/5816764.html
Command
self.Command2.config(state='disabled')
其他
self.Text1.delete(0, 'end')
self.Label2.config(text='请先点击获取按钮!!!')
事件大全
事件 | 代码 |
鼠标左键单击按下 | 1/Button-1/ButtonPress-1 |
鼠标左键单击松开 | ButtonRelease-1 |
鼠标右键单击 | 3 |
鼠标左键双击 | Double-1/Double-Button-1 |
鼠标右键双击 | Double-3 |
鼠标滚轮单击 | 2 |
鼠标滚轮双击 | Double-2 |
鼠标移动 | B1-Motion |
鼠标移动到区域 | Enter |
鼠标离开区域 | Leave |
获得键盘焦点 | FocusIn |
失去键盘焦点 | FocusOut |
键盘事件 | Key |
回车键 | Return |
控件尺寸变 | Configure |
文本框添加右键
from tkinter import *
class RightKey:
def __init__(self,root):
self.root=root
self.menubar = Menu(self.root, tearoff=False)
def _cut(self,editor, event=None):
editor.event_generate("<<Cut>>")
def _copy(self,editor, event=None):
editor.event_generate("<<Copy>>")
def _paste(self,editor, event=None):
editor.event_generate('<<Paste>>')
def rightKey(self,event, editor):
self.menubar.delete(0,END)
self.menubar.add_command(label='剪切(X) Ctrl+X',command=lambda:self._cut(editor))
self.menubar.add_command(label='复制(C) Ctrl+C',command=lambda:self._copy(editor))
self.menubar.add_command(label='粘贴(V) Ctrl+V',command=lambda:self._paste(editor))
self.menubar.post(event.x_root,event.y_root)
if __name__=='__main__':
root=Tk()
a=RightKey(root)
#创建一个菜单
#以Entry为例,Text对象完全一样。
ent=Entry(root)
ent.pack()
ent.bind("<Button-3>", lambda x: a.rightKey(x, ent))#绑定右键鼠标事件
root.mainloop()
还没有评论,来说两句吧...