Message组件

Message(消息)组件是Label组件的变体,用于显示多行文本消息,Message组件能够自动执行,并调整文本的尺寸使其适应给定的尺寸。

 from tkinter import *

 root = Tk()
w1 = Message(root,text="这是一个消息",width=)
w1.pack()
w2 = Message(root,text="这是一个骇人听闻的消息,台湾海峡发生了地震",width=)
w2.pack()
mainloop()

执行结果:

Spinbox组件

Spinbox组件是Entry组件的变体,这是在Tk8.4版本中新增的一个组件,是从固定的值中选取一个。Spinbox组件和Entry组件在用法上非常的相似,主要的区别是Spinbox组件可以通过范围或者元组指定允许用户输入的内容。

 from tkinter import *

 root = Tk()
w = Spinbox(root,from_=,to=)
w.pack()
mainloop()

执行结果:

下面是通过元组指定允许输入的值。

 from tkinter import *

 root = Tk()
w = Spinbox(root,values=("php","python","c+","java"))
w.pack()
mainloop()

执行结果:

PanedWindow组件

PanedWindow组件也是Tk8.4版本新增的一个空间管理组件,和Frame组件有点类似,都是为组件提供一个框架,不过PanedWindow允许让用户调整应用程序的空间划分。

 from tkinter import *

 root = Tk()
m = PanedWindow(orient=VERTICAL)
m.pack()
top = Label(m,text="TOP PANE")
m.add(top)
botton = Label(m,text="Botton pane")
m.add(botton)
mainloop()

执行结果:

在两个Label之间有一个线,可以尝试把鼠标放上去,会有一个上下箭头可以拉一下。

两个窗格的创建好了,那么三个窗格的就子通了:

 from tkinter import *

 root = Tk()
m1 = PanedWindow()
m1.pack(fill=BOTH,expand=)
left = Label(m1,text="left pane")
m1.add(left)
m2 = PanedWindow(orient=VERTICAL)
m1.add(m2)
top = Label(m2,text="TOP PANE")
m2.add(top)
botton = Label(m2,text="Botton pane")
m2.add(botton)
mainloop()

执行结果:

Toplevel组件

Toplevel组件是一个独立的顶级窗口组件有标题栏,边框栏等部件。Toplevel组件通常用来显示额外的对话窗或者弹出框。

来看个例子,使用root窗口添加一个按钮,用于创建一个顶级窗口,点一下出现一个。

 from tkinter import *

 root = Tk()
def creat():
top = Toplevel()
top.title("python")
msg = Message(top,text="I love python")
msg.pack()
Button(root,text="创建顶级窗口",command=creat).pack()
mainloop()

执行结果:

最后说下attributes()方法,它主要是用于设置或者获取窗口属性,如果只是给与选项名,将会返回当前窗口该选项的值。注意,下面的选项方式不支持关键字参数,需要在选项前面添加横杠(-)并使用字符串的方式,用逗号(,)隔开选项和值。

 from tkinter import *

 root = Tk()
def creat():
top = Toplevel()
top.title("python")
top.attributes("-alpha",0.5)
msg = Message(top,text="I love python")
msg.pack()
Button(root,text="创建顶级窗口",command=creat).pack()
mainloop()

执行结果:

GUI的最终选择 Tkinter(八):Message组件、Spinbox组件、PanedWindow组件、Toplevel组件的更多相关文章

  1. GUI的最终选择 Tkinter(九):事件

    Tkinter事件处理 Tkinter应用会花费大部分的时间在处理事件循环中(通过mainloop()方法进入),事件可以是触发的鼠标,键盘的操作,管理窗口触发的重绘事件(在多数情况下都是有用户间接引 ...

  2. GUI的最终选择 Tkinter(四):Entry、Listbox、Scrollbar和Scale组件

    Entry组件 Entry组件就是平时所说的输入框.输入框是程序员用到的最多的一个程序,例如在输入账号和密码的时候需要提供两个输入框,用于接收密码的输入框还会有星号将实际输入的内容隐藏起来. Tkin ...

  3. GUI的最终选择 Tkinter(七):菜单Menu组件、Menubutton组件、OptionMenu组件

    Menu组件 今天说的Menu组件就是一些菜单组件,开始点点点... Tkinter提供了一个Menu组件,可以实现顶级菜单,下拉菜单和弹出菜单.由于底层是代码实现和优化的,所以不太建议通过按钮和其他 ...

  4. GUI的最终选择 Tkinter(五):Text用法

    Text组件 绘制单行文本使用Label组件,多行选使用Listbox,输入框使用Entry,按钮使用Button组件,还有Radiobutton和Checkbutton组件用于提供单选或多选的情况, ...

  5. GUI的最终选择 Tkinter(一):Tkinter最初体验

    EasyGui就是一个简单的文字交互界面模块,从今天开始来开始学习Tkinter Tkinter是Python标准的Gui库,它实际是建立在Tk技术上的,Tk最初是为Tcl(一门工具名语言)所涉及的, ...

  6. GUI的最终选择 Tkinter(三):Checkbutton组件和Radiobutton组件、LabelFrame组件

    Checkbutton组件 Checkbutton组件就是常见的多选按钮,而Radiobutton则是单选按钮 from tkinter import * root = Tk() v = IntVar ...

  7. GUI的最终选择 Tkinter(二):Label和Button组件

    Label组件 Lable组件是用于界面上输出描述的标签,例如提示用户“您下载的电影含有未成年人限制内容,请满18岁以后点击观看!”,先来上结果图: 在来看下它的代码: from tkinter im ...

  8. GUI的最终选择 Tkinter(六):Canvas组件

    Canvas组件,是一个可以让你任性的组件,一个可以让你随心所欲地绘制界面的组件.Canvas是一个通用的组件,它通常用于显示和编辑图形,可以用它来绘制直线,圆形,多边形,甚至是绘制其他组件. 在Ca ...

  9. GUI的最终选择Tkinter模块初级篇

    一.Tkinter模块的基本使用 1)实例化窗口程序 import tkinter as tk app = tk.Tk() app.title("FishC Demo") app. ...

随机推荐

  1. scala初步

    1 安装 http://scala-ide.org/ http://scala-lang.org/

  2. hdu-5858 Hard problem(数学)

    题目链接: Hard problem Time Limit: 2000/1000 MS (Java/Others)     Memory Limit: 65536/65536 K (Java/Othe ...

  3. 机器视觉 之 Gabor Feature

    在机器视觉中,gabor feature是一种比较常见的特征,因为其可以很好地模拟人类的视觉冲击响应而被广泛应用于图像处理, gabor feature 一般是通过对图像与gabor filter做卷 ...

  4. ACM学习历程——POJ3321 Apple Tree(搜索,线段树)

          Description There is an apple tree outside of kaka's house. Every autumn, a lot of apples will ...

  5. svn 操作手册

    1.执行下列指令安装    sudo apt-get install subversion   2.  创建版本库       sudo mkdir /home/svn    sudo mkdir / ...

  6. DB2 Error Messages (Sorted by SQLCODE)

    DB2 Error Messages (Sorted by SQLCODE) DB2 Error Messages (Sorted by SQLCODE) SQLCODE SQLSTATE Descr ...

  7. ACM之Java技巧

    一.Java之ACM注意点 关于四舍五入 小数保留几位:  DecimalFormat df = new DecimalFormat("0.00"); String num = d ...

  8. 集成hibernateDaoSupport实现增删改查

    1. package edu.jlu.fuliang.dao.impl; import java.util.List; import org.springframework.orm.hibernate ...

  9. python--环境变量的使用

    用python 环境变量取代sys.path echo -en "PYTHONPATH=$PYTHONPATH:~/demo" >>~/.bashrc export ~ ...

  10. CodeForces 1109F. Sasha and Algorithm of Silence's Sounds

    题目简述:给定一个$n \times m$的二维矩阵$a[i][j]$,其中$1 \leq nm \leq 2 \times 10^5$,矩阵元素$1 \leq a[i][j] \leq nm$且互不 ...