Tkinter之Scrollbar篇
来源:互联网 发布:珠海网络传媒有限公司 编辑:程序博客网 时间:2024/05/13 17:19
'''Created on 2017年9月13日@author: Nick''''''Tkinter之Scrollbar篇Scrollbar(滚动条),可以单独使用,但最多的还是与其它控件(Listbox,Text,Canva等)结合使用'''#_*_coding:utf-8_*_import tkinter as tkfrom tkinter import *if __name__ == '__main__': root = tk.Tk() root.wm_title('Scrollbar') root.geometry("1800x800+120+100") #设置窗口大小 并初始化桌面位置 root.resizable(width = True,height = True) #宽不可变 高可变 默认True fram = Frame(root) #显示了一个Scrollbar,但什么也做不了,无法拖动slider Scrollbar(fram).pack(side = LEFT) sc = Scrollbar(fram, orient = HORIZONTAL) sc.set(0.1,0) sc.pack(side = LEFT) fram.pack(side = TOP) fram1 = Frame(root) def callScrollbar(moveto,pos): #如何得到两个参数:使用如下打印中的信息,可以看到解释器传给scrollCall函数的两个参数,一个为 #moveto,参考手册可以得知,它是当拖动slider时调用的函数;另一个参数为slider的当前位置,我们 #可以通过set函数来设置slider的位置,因此使用这个pos就可以完成控制slider的位置 print(moveto + pos) sl.set(pos,200) print(sl.get()) sl = Scrollbar(fram1, orient = HORIZONTAL, #默认是竖着的,设置水平方向 command = callScrollbar) sl.pack(side = LEFT) #这样还有一个严重问题,只能对其进行拖动。对两个按钮及pagedwon/pageup的响应,由于up按钮响应的为三个参数,故会出现异常。 #这个例子只是用来说明command属性是可用的,如果喜欢自己可以处理所有的消息,将scrollCall是否可以改为变参数函数? #对于不同的输入分别进行不同的处理。 fram1.pack(side = TOP) #4、单独使用还是比较少见,大部分应用还是与其它控件的绑定,以下是将一个Listbox与Scrollbar绑定的例子 fram2 = Frame(root) lb = Listbox(fram2) for i in range(100): lb.insert(END,str(i)+'listbox') lb.pack(side = LEFT) sl = Scrollbar(fram2) sl.pack(side = RIGHT,fill = Y) # side指定Scrollbar为居右;fill指定填充满整个剩余区域 # 指定Listbox的yscrollbar的回调函数为Scrollbar的set lb['yscrollcommand'] = sl.set # 指定Scrollbar的command的回调函数是Listbar的yview sl['command'] = lb.yview fram2.pack(side = TOP) root.mainloop()
阅读全文
0 0
- Tkinter之Scrollbar篇
- Tkinter教程之Scrollbar篇
- '''Tkinter教程之Scrollbar篇'''
- Tkinter教程之Scrollbar篇
- Tkinter教程之Scrollbar篇
- Python Tkinter Scrollbar控件
- Tkinter之Canvas篇
- Tkinter之Event篇
- Tkinter之Pack篇
- Tkinter之Entry篇
- Tkinter之Checkbutton篇
- Tkinter之Radiobutton篇
- Tkinter之Listbox篇
- Tkinter之Scale篇
- 小白学tkinter(Scrollbar组件 滚动条)
- Tkinter教程之Label篇
- Tkinter教程之Entry篇
- Tkinter教程之Checkbutton篇
- 服网LNMP集群-1.0.5
- socket编程
- Kotlin语法基础
- Linux 下编译自己的 OpenJDK7 包括JVM和JDK API
- [python][库]os库使用方法
- Tkinter之Scrollbar篇
- leetcode 144. Binary Tree Preorder Traversal 二叉树前序遍历 + DFS
- 利用exif.js解决ios手机上传竖拍照片旋转90度问题
- java虚拟机——对象创建与访问概述
- 设计模式
- 黑客与画家
- CVE-2017-0037浅析-Internet Explorer类型混淆漏洞
- jvm系列(一):java类的加载机制
- Cocos2d-lua 初识shader之二:传值