温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Tkinter分栏窗口控件PanedWindow怎么用

发布时间:2022-01-13 21:16:18 来源:亿速云 阅读:403 作者:iii 栏目:大数据

这篇文章主要介绍“Tkinter分栏窗口控件PanedWindow怎么用”,在日常操作中,相信很多人在Tkinter分栏窗口控件PanedWindow怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Tkinter分栏窗口控件PanedWindow怎么用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

简单的对话框级别的布局一旦决定就不会再调整。但是对于类似IDE开发环境等更大的画面,可能需要动态调整功能分区的大小,这时就需要分栏窗口控件PanedWindow。

这个控件的构建非常简单。代码中设定background属性并不是必须,只是为了表示控件的范围。

paned_window = PanedWindow(root, background="#a0ffa0")

构建左侧的Lisbox分区并设定其动作,这部分代码来自之前的示例。最后一行将Listbox添加到PanedWindow上。

# create fontftiTimes = Font(family='Times', size=24, weight=BOLD)
# create a listbox for demo.lb = Listbox(paned_window,             activestyle='dotbox',             bg="#ffffa0",fg="#ff0000",             disabledforeground="#3f3f3f",             highlightbackground="#0000ff",             font=ftiTimes,             height=10, width=20)
# add itemsfor i in range(0,20):    lb.insert(END, str(i))
# bind eventlb.bind('<<ListboxSelect>>',        lambda e: label.config(text=str(lb.curselection())))        paned_window.add(lb)

构建一个包含一个Text控件和横竖两个滚动条的Frame控件并添加到PanedWindow上。将edit_area添加到paned_window时指定padx和pady属性在加上最前面指定背景色的结果是可以看到edit_area和paned_window之间的边界,实际的开发不一定需要。

edit_area = Frame(paned_window)
# create text widget.text = Text(edit_area,            background="#a0ffa0", foreground="#000000",            wrap=NONE)text.grid(row = 0, column = 0, sticky=W+N+E+S)
scroll_ty = Scrollbar(edit_area, orient=VERTICAL, command=text.yview)scroll_ty.grid(row=0, column=1, sticky=N+S)text['yscrollcommand']=scroll_ty.set
scroll_tx = Scrollbar(edit_area, orient=HORIZONTAL, command=text.xview)scroll_tx.grid(row=1, column=0, sticky=E+W)text['xscrollcommand']=scroll_tx.set
edit_area.grid_rowconfigure(0, weight=1)edit_area.grid_columnconfigure(0, weight=1)
paned_window.add(edit_area, sticky=W+N+E+S, padx=2, pady=2)

17行,18行代码的目的是当edit_area的大小发生变化时,Text的控件的大小随之变化而Scrollbar的宽度维持不变。

将paned_window布置在root窗口的第一行:

paned_window.grid(row = 0, column = 0, sticky=N+S+W+E)

第二行布置一个表示信息的标签控件。

label=Label(root)label.grid(row=1, column=0)

设置跟窗口的行列属性以保证拖动root窗口时,paned_window和label的大小可以正确地随着变化。

到此,关于“Tkinter分栏窗口控件PanedWindow怎么用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI