tkinter python(图形开荒界面卡塔尔国分分快三计

作者:编程技术

分分快三计划 1

转载自  

Label

16、Menu顶层菜单

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 # 菜单条
 8 menubar = tkinter.Menu(win)
 9 win.config(menu=menubar)
10 
11 def func():
12     print("**********")
13 
14 # 创建一个菜单选项
15 menu1 = tkinter.Menu(menubar, tearoff=False)
16 
17 # 给菜单选项添加内容
18 for item in ['python','c','java','c  ', 'c#','php','B','退出']:
19     if item == '退出':
20         # 添加分割线
21         menu1.add_separator()
22         menu1.add_command(label=item, command=win.quit)
23     else:
24         menu1.add_command(label=item, command=func)
25 
26 # 向菜单条上添加菜单选项
27 menubar.add_cascade(label='语言', menu=menu1)
28 
29 win.mainloop()

4. 源码附件

代码

# -*- coding:cp936 -*-
from Tkinter import *

class show:
    num_info_hash = {}
    char_info_hash = {}
    num_char = {}
    char_num = {}
    def __init__(self):

        self.root = Tk()
        self.root.title("ASCII码查询".decode('gbk').encode('utf8'))
        #self.root.geometry('470x320')
        ########
        self.frm = Frame(self.root)
        #Top
        Label(self.root, text="ASCII码查询".decode('gbk').encode('utf8'), font=('Arial', 15)).pack()
        self.load_sys()
        self.frm = Frame(self.root)
        #Left
        self.frm_L = Frame(self.frm)
        self.frm_LT = Frame(self.frm_L)
        self.var_char = StringVar()
        Entry(self.frm_LT, textvariable=self.var_char, width = 5, font =('Verdana',15)).pack(side=RIGHT)
        Label(self.frm_LT, text = '字符'.decode('gbk').encode('utf8'), font =('Arial',12)).pack(side=LEFT)
        self.frm_LT.pack()

        self.var_L_char = StringVar()
        self.lb_char = Listbox(self.frm_L, selectmode=BROWSE, listvariable=self.var_L_char, font =('Verdana',12), width=10, height=13)
        self.lb_char.bind('<ButtonRelease-1>', self.get_char)
        for key in self.char_num:
            self.lb_char.insert(END, key[0])
        self.scrl_char = Scrollbar(self.frm_L)
        self.scrl_char.pack(side=RIGHT, fill=Y)
        self.lb_char.configure(yscrollcommand = self.scrl_char.set)
        self.lb_char.pack(side=LEFT, fill=BOTH)
        self.scrl_char['command'] = self.lb_char.yview

        self.frm_L.pack(side = LEFT)

        #Mid
        self.frm_M = Frame(self.frm)
        self.t_show = Text(self.frm_M, width=20, height=5, font =('Verdana',15))
        self.t_show.insert('1.0', '')
        self.t_show.pack()

        self.frm_MB = Frame(self.frm_M)
        Button(self.frm_MB, text="清除".decode('gbk').encode('utf-8'), command=self.clear, width=6, height=1, font=('Arial', 10)).pack(side=LEFT)
        Button(self.frm_MB, text="查询".decode('gbk').encode('utf-8'), command=self.search, width=6, height=1, font=('Arial', 10)).pack(side=RIGHT)
        self.frm_MB.pack(side=BOTTOM)

        self.frm_M.pack(side=LEFT)

        #Right
        self.frm_R = Frame(self.frm)
        self.frm_RT = Frame(self.frm_R)
        self.var_int = StringVar()
        Entry(self.frm_RT, textvariable=self.var_int, width=5, font =('Verdana',15)).pack(side=LEFT)
        Label(self.frm_RT, text='十进制'.decode('gbk').encode('utf-8'), font =('Arial',12)).pack(side=RIGHT)
        self.frm_RT.pack()
        self.var_R_int = StringVar()
        self.lb_int = Listbox(self.frm_R, selectmode=BROWSE, listvariable=self.var_R_int, font =('Verdana',12), width=10, height=13)
        self.lb_int.bind('<ButtonRelease-1>', self.get_int,)
        for key in self.num_char:
            self.lb_int.insert(END, key[0])
        self.scrl_int = Scrollbar(self.frm_R)
        self.scrl_int.pack(side=RIGHT, fill=Y)
        self.lb_int.configure(yscrollcommand = self.scrl_int.set)
        self.lb_int.pack(side=LEFT, fill=BOTH)
        self.scrl_int['command'] = self.lb_int.yview

        self.frm_R.pack(side = LEFT)

        self.frm.pack()
        ########


    def get_char(self, event):
        self.var_char.set('')
        self.var_int.set('')
        tmp = self.lb_char.get(self.lb_char.curselection())
        self.var_char.set(tmp)
    def get_int(self, event):
        self.var_int.set('')
        self.var_char.set('')
        tmp = self.lb_int.get(self.lb_int.curselection())
        self.var_int.set(tmp)
    def clear(self):
        self.var_char.set('')
        self.var_int.set('')
        self.t_show.delete('1.0', '10.0')
    def search(self):
        self.t_show.delete('1.0', '100.0')
        tmp_char = self.var_char.get()
        tmp_int = self.var_int.get()
        if tmp_char != '':
            if not self.char_info_hash.has_key(tmp_char):
                self.t_show.insert('1.0', "您输入的字符不在128个字符之内".decode('gbk').encode('utf8'))
            else:
                self.t_show.insert('1.0', '十六进制:'.decode('gbk').encode('utf8')   't'   self.char_info_hash[tmp_char][2]   'n')
                self.t_show.insert('1.0', '十进制:'.decode('gbk').encode('utf8')  't'   self.char_info_hash[tmp_char][1]   'n')
                self.t_show.insert('1.0', '八进制:'.decode('gbk').encode('utf8')   't'   self.char_info_hash[tmp_char][0]   'n')
                self.t_show.insert('1.0', '字符:'.decode('gbk').encode('utf8')  't'   tmp_char   'nn')
            self.var_char.set('')
            self.var_int.set('')
        elif tmp_int !='':
            if not self.num_info_hash.has_key(tmp_int):
                self.t_show.insert('1.0', "请输入介于0~127之间的整数".decode('gbk').encode('utf8'))
            else:
                self.t_show.insert('1.0', '字符:'.decode('gbk').encode('utf8')  't'   self.num_info_hash[tmp_int][2]   'n')
                self.t_show.insert('1.0', '十六进制:'.decode('gbk').encode('utf8')   't'   self.num_info_hash[tmp_int][1]   'n')
                self.t_show.insert('1.0', '八进制:'.decode('gbk').encode('utf8')   't'   self.num_info_hash[tmp_int][0]   'n')
                self.t_show.insert('1.0', '十进制:'.decode('gbk').encode('utf8')   't'   tmp_int   'nn')
            self.var_char.set('')
            self.var_int.set('')
        else:
            self.t_show.insert('1.0', '请选择或输入'.decode('gbk').encode('utf8'))

    def load_sys(self):
        f = file('asc')
        for line in f:
            chunk = line.strip().split('t')
            self.num_char[int(chunk[1])] = chunk[3]
            self.char_num[chunk[3]] = int(chunk[1])
            self.num_info_hash[chunk[1]] = [chunk[0], chunk[2], chunk[3]]
            self.char_info_hash[chunk[3]] = [chunk[0], chunk[1], chunk[2]]

        self.num_char =sorted(self.num_char.iteritems(), key = lambda asd:asd[0])
        self.char_num =sorted(self.char_num.iteritems(), key = lambda asd:asd[1])




def main():
    d = show()
    mainloop()
if __name__== "__main__":
    main()

文本

0    00    nul
   1    01    soh
   2    02    stx
   3    03    etx
   4    04    eot
   5    05    enq
   6    06    ack
   7    07    bel
   8    08    bs
   9    09    ht
   10    0a    nl
   11    0b    vt
   12    0c    ff
   13    0d    er
   14    0e    so
   15    0f    si
   16    10    dle
   17    11    dc1
   18    12    dc2
   19    13    dc3
   20    14    dc4
   21    15    nak
   22    16    syn
   23    17    etb
   24    18    can
   25    19    em
   26    1a    sub
   27    1b    esc
   28    1c    fs
   29    1d    gs
   30    1e    re
   31    1f    us
   32    20    sp
   33    21    !
   34    22    "
   35    23    #
   36    24    $
   37    25    %
   38    26    &amp;
   39    27    `
   40    28    (
   41    29    )
   42    2a    *
   43    2b     
   44    2c    ,
   45    2d    -
   46    2e    .
   47    2f    /
   48    30    0
   49    31    1
   50    32    2
   51    33    3
   52    34    4
   53    35    5
   54    36    6
   55    37    7
   56    38    8
   57    39    9
   58    3a    :
   59    3b    ;
   60    3c    &lt;
   61    3d    =
   62    3e    &gt;
   63    3f    ?
   64    40    @
   65    41    A
   66    42    B
   67    43    C
   68    44    D
   69    45    E
   70    46    F
   71    47    G
   72    48    H
   73    49    I
   74    4a    J
   75    4b    K
   76    4c    L
   77    4d    M
   78    4e    N
   79    4f    O
   80    50    P
   81    51    Q
   82    52    R
   83    53    S
   84    54    T
   85    55    U
   86    56    V
   87    57    W
   88    58    X
   89    59    Y
   90    5a    Z
   91    5b    [
   92    5c    
   93    5d    ]
   94    5e    ^
   95    5f    _
   96    60    '
   97    61    a
   98    62    b
   99    63    c
   100    64    d
   101    65    e
   102    66    f
   103    67    g
   104    68    h
   105    69    i
   106    6a    j
   107    6b    k
   108    6c    l
   109    6d    m
   110    6e    n
   111    6f    o
   112    70    p
   113    71    q
   114    72    r
   115    73    s
   116    74    t
   117    75    u
   118    76    v
   119    77    w
   120    78    x
   121    79    y
   122    7a    z
   123    7b    {
   124    7c    |
   125    7d    }
   126    7e    ~
   127    7f    del

Python Tkinter仿照效法资料之(通用控件属性卡塔 尔(阿拉伯语:قطر‎

The Canvas widget is used to draw shapes, such as lines, ovals, polygons, and rectangles, in your application.

8、Checkbutton多选框控件

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 import tkinter
 4 
 5 win = tkinter.Tk()
 6 win.title("yudanqu")
 7 win.geometry("400x400 200 50")
 8 
 9 def updata():
10     message = ""
11     if hobby1.get() ==True:
12         message  = "moneyn"
13     if hobby2.get() == True:
14         message  = "powern"
15     if hobby3.get() == True:
16         message  = "peoplen"
17 
18     # 清空text中所有内容
19     text.delete(0.0, tkinter.END)
20     text.insert(tkinter.INSERT, message)
21 
22 # 要绑定的变量
23 hobby1 = tkinter.BooleanVar()
24 # 多选框
25 check1 = tkinter.Checkbutton(win, text="money", variable=hobby1, command=updata)
26 check1.pack()
27 hobby2 = tkinter.BooleanVar()
28 check2 = tkinter.Checkbutton(win, text="power", variable=hobby2, command=updata)
29 check2.pack()
30 hobby3 = tkinter.BooleanVar()
31 check3 = tkinter.Checkbutton(win, text="people", variable=hobby3, command=updata)
32 check3.pack()
33 
34 text = tkinter.Text(win, width=50, height=5)
35 text.pack()
36 
37 win.mainloop()

 


24、表格布局

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 label1 = tkinter.Label(win, text="good", bg="blue")
 8 label2 = tkinter.Label(win, text="nice", bg="red")
 9 label3 = tkinter.Label(win, text="cool", bg="green")
10 label4 = tkinter.Label(win, text="handsome", bg="yellow")
11 
12 # 表格布局
13 label1.grid(row=0,column=0)
14 label2.grid(row=0,column=1)
15 label3.grid(row=1,column=0)
16 label4.grid(row=1,column=1)
17 
18 win.mainloop()

  超多控件分享的选项:

 

选项(别名)

 

说明

 

单位

 

典型值

 

仅此类控件

activebackground 指定画活动元素的背景颜色.元素(控件或控件的一部分)在鼠标放在其上并按动鼠标按钮引起某些行为的发生时,是活动的.如果严格的Modf一致性请求通过设置tk_strictModf变量完成,该选项将被忽略,正常背景色将被使用.对Windows和Macintosh系统,活动颜色将只有在鼠标按钮1被按过元素时使用  color 'red'
'#fa07a3'
Button
Checkbutton
Menu
Menubutton
Radiobutton
Scale
Scrollbar
activeforeground 指定画活动元素时的前景颜色.参见上面关于活动元素的定义   color 'cadeblue' Button
Menu
Checkbutton
Menubutton
Radiobutton 
anchor 指出控件信息(比如文本或者位图)如何在控件中显示.必须为下面值之一:
N,NE,E,SE,S,SW,W,NW或者CENTER.比如NW(NorthWest)指显示信息时使左上角在控件的左上端
 constant   Button
Checkbutton
Label
Message
Menubutton
Radiobutton 
bitmap  指定一个位图在控件中显示,以Tkinter(Tk_GetBitmap)接受的任何形式.位图显示的精确方式受其他选项如锚或对齐的影响.典型的,如果该选项被指定,它覆盖指定显示控件中文本的其他选;bitmap选项可以重设为空串以使文本能够被显示在控件上.在同时支持位图和图像的控件中,图像通常覆盖位图  bitmap   Button
Checkbutton
Label
Menubutton
Radiobutton
command  指定一个与控件关联的命令.该命令通常在鼠标离开控件之时被调用,对于单选按钮和多选按钮,tkinter变量(通过变量选项设置)将在命令调用时更新   command  setupData  Button
Checkbutton
Radiobutton
Scale
Scrollbar 
disabledforeground 指定绘画元素时的前景色.如果选项为空串(单色显示器通常这样设置),禁止的元素用通常的前景色画,但是采用点刻法填充模糊化   color  'gray50' 

Button
Checkbutton
Radiobutton
Menu
Menubutton

height 指定窗口的高度,采用字体选项中给定字体的字符高度为单位,至少为1   integer 1  4  Button
Canvas
Frame
Label
Listbox
Checkbutton
Radiobutton
Menubutton
Text
Toplevel 
image  指定所在控件中显示的图像,必须是用图像create方法产生的.如果图像选项设定,它覆盖已经设置的位图或文本显示;更新恢复位图或文本的显示需要设置图像选项为空串    image   Button
Checkbutton
Label
Menubutton
Radiobutton 
justify 当控件中显示多行文本的时候,该选项设置不同行之间是如何排列的,其值为如下之一:
LEFT,CENTER或RIGHT.LEFT指每行向左对齐,CENTER指每行居中对齐,RIGHT指向右对齐 
 constant  RIGHT  Button
Checkbutton
Entry
Label
Menubutton
Message
Radiobutton 
padx  指定一个非负值设置控件X方向需要的边距.该值为Tkinter(Tk_GetPixels)接受的格式.当计算需要多大的窗口时,控件会把此值加到正常大小之上(由控件中显示内容决定);如果几何管理器能够满足此请求,控件将在左端或右端得到一个给定的多余空边.大部分控件只用此项于文本,如果它们显示位图或图像,通常忽略空边选项   pixels 2m  10  Button
Checkbutton
Label
Menubutton
Message
Radiobutton
Text 
pady  指定一个非负值设置控件Y方向需要的边距.该值为Tkinter(Tk_GetPixels)接受的格式.当计算需要多大的窗口时,控件会把此值加到正常大小之上(由控件中显示内容决定);如果几何管理器能够满足此请求,控件将在上端或下端得到一个给定的多余空边.大部分控件只用此项于文本,如果它们显示位 图或图像,通常忽略空边选项   pixels 12  3m  Button
Checkbutton
Label
Menubutton
Message
Radiobutton
Text 
selectbackground  指定显示选中项时的背景颜色   color  blue  Canvas
Listbox
Entry
Text 
selectborderwidth  指定一个非负值,给出选中项的三维边界宽度,值可以是任何
Tkinter(Tk_GetPixels)接受的格式 
 pixel

Canvas
Entry
Listbox
Text 

selectforeground 指定显示选中项的前景颜色   color yellow  Canvas
Entry
Listbox
Text 
state 

指定控件下列两三个状态之一(典型是复选按钮):
NORMAL和DISABLED或NORMAL,ACTIVE和NORMAL.在NORMAL状态,控件有前景色和背景显示;在ACTIVE状态,控件按activeforeground和activebackground选项显示;在DISABLED状态下,控件不敏感,缺省捆绑将拒绝激活控件,并忽略鼠标行为,此时,由disabled foreground和background选项决定如何显示 

 constant ACTIVE 

Button
Checkbutton
Entry
Menubutton
Scale
Radiobutton
Text 

text  指定控件中显示的文本,文本显示格式由特定控件和其他诸如锚和对齐选项决定   string 'Display'  Button
Checkbutton
Label
Menubutton
Message
Radiobutton 
textvariable  指定一个变量名字.变量值被转变为字符串在控件上显示.如果变量值改变,控件将自动更新以反映新值,字符串显示格式由特定控件和其他诸如锚和对齐选项决定   variable widgetConstant  Button
Checkbutton
Entry
Label
Menubutton
Message
Radiobutton 
underline  指定控件中加入下划线字符的整数索引.此选项完成菜单按钮与菜单输入的键盘遍历缺省捆绑.0对应控件中显示的第一个字符,1对应第二个,以此类推   integer Button
CheckButton
Label
Menubutton
Radiobutton 
wraplength  对于能够支持字符换行的控件,该选项指定行的最大字符数,超过最大字符数的行将转到下行显示,这样一行不会超过最大字符数.该值可以是窗口距离的任何标准格式.如果该值小于或等于0,不换行,换行只有在文本中的换行符的地方才出现   pixel 41,65  Button
Checkbutton
Label
Menubutton
Radiobutton
xscrollcommand  指定一个用来与水平滚动框进行信息交流的命令前缀,当控件窗口视图改变(或者别的任何滚动条显示的改变,如控件的总尺寸改变等等),控件将通过把滚动命令和两个数连接起来产生一个命令.两个数分别为0到1之间的分数,代表文档中的一个位置,0表示文档的开头,1.0表示文档的结尾处,0.333表示整个文档的三分之一处,如此等等.第一个分数代表窗口中第一个可见文档信息,第二个分数代表紧跟上一个可见部分之后的信息.然后命令把它们传到Tcl解释器执行.
典型的,xscrollcommand选项由滚动条标识跟着set组成,如set.x.scrollbar set将引起滚动条在窗口中视图变化时被更新.如果此项没有指定,不执行命令 
 function   Canvas
Entry
Listbox
Text 
yscrollcommand  指定一个用来与垂直滚动框进行信息交流的命令前缀,当控件窗口视图改变(或者别的任何滚动条显示的改变,如控件的总尺寸改变等等),控件将通过把滚动命令和两个数连接起来产生一个命令.两个数分别为0到1之间的分数,代表文档中的一个位置,0表示文档的开头,1.0表示文档的结尾处,0.333表示整个文档的三分之一处,如此等等.第一个分数代表窗口中第一个可见文档信息,第二个分数代表紧跟上一个可见部分之后的信息.然后命令把它们传到Tcl解释器执行.
典型的,yscrollcommand选项由滚动条标识跟着set组成,如set.y.scrollbar set将引起滚动条在窗口中视图变化时被更新.如果此项没有指定,不执行命令 
 function   Canvas
Entry
Listbox
Text

Entry

10、Listbox控件一

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 import tkinter
 4 
 5 win = tkinter.Tk()
 6 win.title("yudanqu")
 7 win.geometry("400x400 200 50")
 8 
 9 '''
10 列表框控件:可以包含一个或多个文本框
11 作用:在listbox控件的小窗口显示一个字符串
12 '''
13 
14 # 创建一个listbox,添加几个元素
15 lb = tkinter.Listbox(win, selectmode=tkinter.BROWSE)
16 lb.pack()
17 
18 for item in ["good", "nice", "handsome", "aaa", "bbb", "ccc", "ddd"]:
19     # 按顺序添加
20     lb.insert(tkinter.END, item)
21 
22 # 在开始添加
23 lb.insert(tkinter.ACTIVE, "cool")
24 
25 # 将列表当做一个元素添加
26 # lb.insert(tkinter.END, ["very good", "very nice"])
27 
28 # 删除:参数1为开始的索引,参数2为结束的索引,如果不指定参数2,只删除第一个索引处的内容
29 lb.delete(1,3)
30 
31 # 选中:参数1为开始的索引,参数2为结束的索引,如果不指定参数2,只选中第一个索引处的内容
32 lb.select_set(2,3)
33 
34 # 取消选中:参数1为开始的索引,参数2为结束的索引,如果不指定参数2,只取消第一个索引处的内容
35 lb.select_clear(2)
36 
37 # 获取到列表中的元素个数
38 print(lb.size())
39 # 获取值
40 print(lb.get(2,3))
41 
42 # 返回当前的索引项,不是item元素
43 print(lb.curselection())
44 
45 # 判断:一个选项是否被选中
46 print(lb.selection_includes(3))
47 
48 win.mainloop()

开卷目录

加上上述零件之大器晚成或更加多的GUI应用程序.

26、鼠标移动事件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 
 8 # <B1-Motion>  左键移动
 9 # <B2-Motion>  中键移动
10 # <B3-Motion>  右键移动
11 
12 
13 label = tkinter.Label(win, text="*********")
14 label.pack()
15 
16 def func(event):
17     print(event.x, event.y)
18 
19 label.bind("<B1-Motion>", func)
20 
21 win.mainloop()

资料来源于——《Python与Tkinter编制程序》附录B

 

LabelFrame

20、表格数据

 1 import tkinter
 2 from tkinter import ttk
 3 
 4 win = tkinter.Tk()
 5 win.title("yudanqu")
 6 win.geometry("600x400 200 50")
 7 
 8 # 表格
 9 tree = ttk.Treeview(win)
10 tree.pack()
11 
12 # 定义列
13 tree["columns"] = ("姓名","年龄","身高","体重")
14 # 设置列,列还不显示
15 tree.column("姓名", width=100)
16 tree.column("年龄", width=100)
17 tree.column("身高", width=100)
18 tree.column("体重", width=100)
19 
20 # 设置表头
21 tree.heading("姓名", text="姓名-name")
22 tree.heading("年龄", text="年龄-age")
23 tree.heading("身高", text="身高-height")
24 tree.heading("体重", text="体重-weight")
25 
26 # 添加数据
27 tree.insert("", 0, text="line1", values=("小郑","34","177cm","70kg"))
28 tree.insert("", 1, text="line2", values=("小张","43","188cm","90kg"))
29 
30 win.mainloop()

1. 付加物介绍

界面

  分分快三计划 2

功能

  • 通过输入字符或数字查询相应的新闻
  • 由此增选列表中的音信查询相应的新闻

重返最上端


19、Frame控件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 '''
 8 框架控件:在桌面上显示一个矩形区域,多作为一个容器控件
 9 '''
10 
11 frm = tkinter.Frame(win)
12 frm.pack()
13 
14 # left
15 frm_l = tkinter.Frame(frm)
16 tkinter.Label(frm_l, text="左上", bg="pink").pack(side=tkinter.TOP)
17 tkinter.Label(frm_l, text="左下", bg="blue").pack(side=tkinter.TOP)
18 frm_l.pack(side=tkinter.LEFT)
19 
20 # right
21 frm_r = tkinter.Frame(frm)
22 tkinter.Label(frm_r, text="右上", bg="green").pack(side=tkinter.TOP)
23 tkinter.Label(frm_r, text="右下", bg="red").pack(side=tkinter.TOP)
24 frm_r.pack(side=tkinter.RIGHT)
25 
26 win.mainloop()

3. 相关知识

第风流倜傥看怎么发生第四个窗口

from Tkinter import *   #引用Tk模块
root = Tk()             #初始化Tk()
root.mainloop()         #进入消息循环

多少个常用属性

  • title: 设置窗口题目
  • geometry: 设置窗口大小
  • resizable():设置窗口是还是不是能够变化长 宽

分分快三计划 3

# -*- coding: cp936 -*-
from Tkinter import *
root = Tk()
root.title("hello world")
root.geometry('200x100')                 #是x 不是*
root.resizable(width=False, height=True) #宽不可变, 高可变,默认为True
root.mainloop()

分分快三计划 4

介绍以下多少个控件的用法

  • Label
  • Frame
  • Entry
  • Text
  • Button
  • Listbox
  • Scrollbar

表明各种控件最终要增进pack().不然控件是力不能支彰显的.

3.1 Label

说明

  标签

用法

  Label(根对象, [分分快三计划,本性列表])

属性

  • text    要实际的公文
  • bg    背景颜色
  • font    字体(颜色, 大小)
  • width  控件宽度
  • height 控件中度

  以下介绍的控件大致都有那多少个脾气, 更详细的性质查看参谋网页

举例

分分快三计划 5

# -*- coding: cp936 -*-
from Tkinter import *
root = Tk()
root.title("hello world")
root.geometry('300x200')
l = Label(root, text="show", bg="green", font=("Arial", 12), width=5, height=2)
l.pack(side=LEFT)  #这里的side可以赋值为LEFT  RTGHT TOP  BOTTOM
root.mainloop()

分分快三计划 6

效果

  分分快三计划 7

3.2 Frame

说明

  在荧屏上创制一块矩形区域,多作为容器来布局窗体

用法

  Frame(根对象, [个性列表])

举例

     要在控件中出现那样的四个词语

                 校训

          厚德        敬业

          博学        乐群     

  能够设计为         

    分分快三计划 8

分分快三计划 9

# -*- coding: cp936 -*-
from Tkinter import *
root = Tk()
root.title("hello world")
root.geometry('300x200')

Label(root, text='校训'.decode('gbk').encode('utf8'), font=('Arial', 20)).pack()

frm = Frame(root)
#left
frm_L = Frame(frm)
Label(frm_L, text='厚德'.decode('gbk').encode('utf8'), font=('Arial', 15)).pack(side=TOP)
Label(frm_L, text='博学'.decode('gbk').encode('utf8'), font=('Arial', 15)).pack(side=TOP)
frm_L.pack(side=LEFT)

#right
frm_R = Frame(frm)
Label(frm_R, text='敬业'.decode('gbk').encode('utf8'), font=('Arial', 15)).pack(side=TOP)
Label(frm_R, text='乐群'.decode('gbk').encode('utf8'), font=('Arial', 15)).pack(side=TOP)
frm_R.pack(side=RIGHT)

frm.pack()

root.mainloop()

分分快三计划 10

效果

  分分快三计划 11

 

3.3 Entry

说明

  成立单行文本框

用法

  •   创建:lb =Entry(根对象, [属性列表])
  •   绑定变量 var=StringVar()    lb=Entry(根对象, textvariable = var)
  •   获取文本框中的值   var.get()
  •   设置文本框中的值   var.set(item1)

举例

分分快三计划 12

# -*- coding: cp936 -*-
from Tkinter import *
root = Tk()
root.title("hello world")
root.geometry()
var = StringVar()
e = Entry(root, textvariable = var)
var.set("hello")
e.pack()

root.mainloop()

分分快三计划 13

效果

  分分快三计划 14

3.4 Text

说明

  向该空间内输入文本

用法

  t = Text(根对象)

  插入:t.insert(mark, 内容)

  删除:t.delete(mark1, mark2)

  此中,mark能够是行号,大概特殊标志,举例

  • INSERT:光标的插入点CUOdysseyRENT:鼠标的近日地点所对应的字符位置
  • END:那一个Textbuffer的末梢叁个字符
  • SEL_FI本田UR-VST:选汉语本域的首先个字符,若无当选区域则会抓住这些
  • SEL_LAST:选汉语本域的末梢三个字符,若无入选区域则会掀起 非凡

举例

分分快三计划 15

# -*- coding: cp936 -*-
from Tkinter import *
root = Tk()
root.title("hello world")
root.geometry('300x200')

t = Text(root)
t.insert(1.0, 'hellon')
t.insert(END, 'hello000000n')
t.insert(END, 'nono')
t.pack()

root.mainloop()

分分快三计划 16

效果

  分分快三计划 17

3.5 Button

说明

  创立开关

用法

  Button(根对象, [属性列表])

举例

分分快三计划 18

# -*- coding: cp936 -*-
from Tkinter import *
root = Tk()
root.title("hello world")
root.geometry()

def printhello():
    t.insert('1.0', "hellon")

t = Text()
t.pack()
Button(root, text="press", command = printhello).pack()
root.mainloop()

分分快三计划 19

效果

  分分快三计划 20

3.6 Listbox

说明

  列表控件,能够分包三个或三个公文想,可单选也可多选

用法

  •   创建:lb = ListBox(根对象, [属性列表])
  •   绑定变量 var=StringVar()    lb=ListBox(根对象, listvariable = var)
  •   得到列表中的全部值   var.get()
  •   设置列表中的全部值   var.set((item1, item2, .....))
  •   添加:lb.insert(item)
  •   删除:lb.delete(item,...)
  •   绑定事件 lb.bind('<ButtonRelease-1>', 函数)
  •   获得所选中的选项 lbl.get(lb.curselection())

属性

  selectmode可以为BROWSE MULTIPL SINGLE

举例

分分快三计划 21

# -*- coding: cp936 -*-
from Tkinter import *
root = Tk()
root.title("hello world")
root.geometry()

def print_item(event):
    print lb.get(lb.curselection())

var = StringVar()
lb = Listbox(root,  listvariable = var)
list_item = [1, 2, 3, 4]         #控件的内容为1 2 3 4
for item in list_item:
    lb.insert(END, item)
lb.delete(2, 4)                  #此时控件的内容为1 3

var.set(('a', 'ab', 'c', 'd'))   #重新设置了,这时控件的内容就编程var的内容了
print var.get()
lb.bind('<ButtonRelease-1>', print_item)
lb.pack()

root.mainloop()

分分快三计划 22

效果

  分分快三计划 23

3.7 Scrollbar

说明

  在显示器上制造一块矩形区域,多作为容器来布局窗体

用法

  Frame(根对象, [质量列表]), 最长用的用法是和别的控件一齐使用.

举例

分分快三计划 24

from Tkinter import *
root = Tk()
root.title("hello world")
root.geometry()

def print_item(event):
    print lb.get(lb.curselection())

var = StringVar()
lb = Listbox(root, height=5, selectmode=BROWSE, listvariable = var)
lb.bind('<ButtonRelease-1>', print_item)
list_item = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
for item in list_item:
    lb.insert(END, item)

scrl = Scrollbar(root)
scrl.pack(side=RIGHT, fill=Y)
lb.configure(yscrollcommand = scrl.set)
lb.pack(side=LEFT, fill=BOTH)
scrl['command'] = lb.yview

root.mainloop()

分分快三计划 25

效果

  分分快三计划 26

Scrollbar

12、Listbox控件三

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 # win.geometry("400x400 200 50")
 6 
 7 # EXTENDED:可以使listbox支持shift和Ctrl
 8 lb = tkinter.Listbox(win, selectmode=tkinter.EXTENDED)
 9 lb.pack()
10 
11 for item in ["good", "nice", "handsome", "aaa", "bbb", "ccc", "ddd", "good", "nice", "handsome", "aaa", "bbb", "ccc", "ddd", "good", "nice", "handsome", "aaa", "bbb", "ccc", "ddd", "good", "nice", "handsome", "aaa", "bbb", "ccc", "ddd", "good", "nice", "handsome", "aaa", "bbb", "ccc", "ddd"]:
12     # 按顺序添加
13     lb.insert(tkinter.END, item)
14 
15 # 滚动条
16 sc = tkinter.Scrollbar(win)
17 sc.pack(side=tkinter.RIGHT, fill=tkinter.Y)
18 # 配置
19 lb.configure(yscrollcommand=sc.set)
20 lb.pack(side=tkinter.LEFT, fill=tkinter.BOTH)
21 # 额外给属性赋值
22 sc["command"] = lb.yview
23 
24 win.mainloop()

2. 设计规划

规划图

分分快三计划 27

回去最上部

import Tkinter

28、步入和间距事件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 # <Enter>  当鼠标进入控件时触发事件
 8 # <Leave>  当鼠标离开控件时触发事件
 9 
10 label = tkinter.Label(win, text="*********", bg="red")
11 label.pack()
12 
13 def func(event):
14     print(event.x, event.y)
15 
16 label.bind("<Enter>", func)
17 label.bind("<Leave>", func)
18 
19 
20 win.mainloop()

Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口,位Python的放松权利模块,间接import tkinter就能够使用。

A labelframe is a simple container widget. Its primary purpose is to act as a spacer or container for complex window layouts.

14、Scale控件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 '''
 8 供用户通过拖拽指示器来改变变量的值,可以水平,也可以竖直
 9 '''
10 
11 # tkinter.HORIZONTAL水平
12 # tkinter.VERTICAL 竖直(默认)
13 # length:水平时表示宽度,竖直时表示高度
14 # tickintervar :选择值将会为该值得倍数
15 
16 scale1 = tkinter.Scale(win, from_=0, to=100, orient=tkinter.HORIZONTAL, tickinterval=10, length=200)
17 scale1.pack()
18 
19 # 设置值
20 scale1.set(20)
21 
22 # 取值
23 # print(scale1.get())
24 
25 def showNum():
26     print(scale1.get())
27 tkinter.Button(win, text="按钮", command=showNum).pack()
28 
29 win.mainloop()
  • 1. 付加物介绍
  • 2. 设计规划
    1. 有关文化
    1. 源码附属类小构件

那将开创贰个底下的窗口:

17、Menu鼠标右键菜单

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 # 菜单条
 8 menubar = tkinter.Menu(win)
 9 
10 def func():
11     print("**********")
12 
13 # 菜单
14 menu = tkinter.Menu(menubar, tearoff=False)
15 # 给菜单选项添加内容
16 for item in ['python','c','java','c  ', 'c#','php','B','退出']:
17     if item == '退出':
18         # 添加分割线
19         menu.add_separator()
20         menu.add_command(label=item, command=win.quit)
21     else:
22         menu.add_command(label=item, command=func)
23 
24 menubar.add_cascade(label="语言", menu=menu)
25 
26 def showMenu(event):
27     menubar.post(event.x_root, event.y_root)
28 
29 win.bind("<Button-3>", showMenu)
30 
31 win.mainloop()

 

A PanedWindow is a container widget that may contain any number of panes, arranged horizontally or vertically.

6、Text控件

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 import tkinter
 4 
 5 win = tkinter.Tk()
 6 win.title("yudanqu")
 7 win.geometry("400x400 200 50")
 8 
 9 '''
10 文本控件:用于显示多行文本
11 '''
12 
13 # height表示的是显示的行数
14 text = tkinter.Text(win, width=30, height=10)
15 text.pack()
16 
17 str = '''盖闻天地之数,有十二万九千六百岁为一元。将一元分为十二会,乃子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥之十二支也。每会该一万八百岁。且就一日而论:子时得阳气,而丑则鸡鸣;寅不通光,而卯则日出;辰时食后,而巳则挨排;日午天中,而未则西蹉;申时晡而日落酉;戌黄昏而人定亥。譬于大数,若到戌会之终,则天地昏蒙而万物否矣。再去五千四百岁,交亥会之初,则当黑暗,而两间人物俱无矣,故曰混沌。又五千四百岁,亥会将终,贞下起元,近子之会,而复逐渐开明。邵康节曰:“冬至子之半,天心无改移。一阳初动处,万物未生时。”到此,天始有根。再五千四百岁,正当子会,轻清上腾,有日,有月,有星,有辰。日、月、星、辰,谓之四象。故曰,天开于子。又经五千四百岁,子会将终,近丑之会,而逐渐坚实。易曰:“大哉乾元!至哉坤元!万物资生,乃顺承天。”至此,地始凝结。再五千四百岁,正当丑会,重浊下凝,有水,有火,有山,有石,有土。水、火、山、石、土谓之五形。故曰,地辟于丑。又经五千四百岁,丑会终而寅会之初,发生万物。'''
18 
19 text.insert(tkinter.INSERT, str)
20 
21 win.mainloop()

 超越四分之二控件的分享选项:

选项(别名)

说明

单位

典型值

没有此属性的控件

background(bg)

当控件显示时,给出的正常颜色

color

'gray25'
'#ff4400'
 

borderwidth(bd)

设置一个非负值,该值显示画控件外围3D边界的宽度;(特别的由relief选项决定这项决定).控件内部的3D效果也可以使用该值,该值可以是Tkinter(Tk_GetPixels)接受的任何格式 

pixel

3  

cursor

指定控件使用的鼠标光标,该值可以是Tkinter(Tk_GetPixels)接受的任何格式

cursor

gumby  

font

指定控件内部文本的字体

font

 'Helvetica'
('Verdana',8)
Canvas Frame
Scrollbar
Toplevel 

foreground(fg)

 指定控件的前景色 color  'black'
'#ff2244'
Canvas Frame
Scrollbar
Toplevel 

highlightbackground

指出经过没有输入焦点的控件加亮区域颜色  color 'gray30' Menu 

highlightcolor

指出经过没有输入焦点的控件周围长方区域加亮颜色  color  'royalblue'  Menu 

highlightthickness

设置一个非负值,该值指出一个有输入焦点的控件周围加亮方形区域的宽度,该值可以是 Tk_GetCursor)接受的任何格式.如果为0,则不画加亮区域 pixel  2.1m  Menu 

relief

指出控件3D效果.可选值为RAISED,SUNKEN,FLAT,RIDGE,SOLID,GROOVE.该值指出控件内部相对于外部的外观样式,比如RAISED意味着控件内部相对于外部突出  constant  RAISED
GROOVE 
 

takefocus

决定窗口在键盘遍历时是否接收焦点(比如Tab,shift-Tab).在设定焦点到一个窗口之前,遍历脚本检查takefocus选项的值,值0意味着键盘遍历时完全跳过,值1意味着只要有输入焦点(它及所有父代都映射过)就接收.空值由脚本自己觉定是否接收,当前的算法是如果窗口被禁止,或者没有键盘捆绑或窗口不可见时,跳过  boolean  1 YES   

width

指定一个整数,设置控件宽度,控件字体的平局字符数.如果值小于等于0,控件选择一个能够容纳目前字符的宽度

integer

32

Menu

Scale

29、响应全体按钮的平地风波

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 # <Key>  响应所有的按键(要有焦点)
 8 
 9 label = tkinter.Label(win, text="*********", bg="red")
10 # 设置焦点
11 label.focus_set()
12 label.pack()
13 
14 def func(event):
15     print("event.char=", event.char)
16     print("event.keycode=", event.keycode)
17 
18 label.bind("<Key>", func)
19 
20 win.mainloop()

作为实行, 用Tkinter做了个ascii码转变查询表

Menu

2、Label控件

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 
 4 import tkinter
 5 
 6 win = tkinter.Tk()
 7 win.title("yudanqu")
 8 win.geometry("400x400 200 50")
 9 
10 '''
11 Label:标签控件,可以显示文本
12 '''
13 # win:父窗体
14 # text:显示的文本内容
15 # bg:背景色
16 # fg:字体颜色
17 # font:字体
18 # wraplength:指定text文本中多宽之后换行
19 # justify:设置换行后的对齐方式
20 # anchor:位置 n北,e东,w西,s南,center居中;还可以写在一起:ne东北方向
21 label = tkinter.Label(win,
22                       text="this is a word",
23                       bg="pink", fg="red",
24                       font=("黑体", 20),
25                       width=20,
26                       height=10,
27                       wraplength=100,
28                       justify="left",
29                       anchor="ne")
30 
31 # 显示出来
32 label.pack()
33 
34 
35 win.mainloop()

让大家来探视如何他们的风姿罗曼蒂克对联合的质量。如大小,颜色和字体内定.

22、相对布局

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 label1 = tkinter.Label(win, text="good", bg="blue")
 8 label2 = tkinter.Label(win, text="nice", bg="red")
 9 label3 = tkinter.Label(win, text="cool", bg="green")
10 
11 # 绝对布局,窗口的变化对位置没有影响
12 label1.place(x=10,y=10)
13 label2.place(x=50,y=50)
14 label3.place(x=100,y=100)
15 
16 win.mainloop()

PanedWindow

31、内定开关事件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 
 8 label = tkinter.Label(win, text="*********", bg="red")
 9 # 设置焦点
10 label.focus_set()
11 label.pack()
12 
13 def func(event):
14     print("event.char=", event.char)
15     print("event.keycode=", event.keycode)
16 
17 
18 win.bind("a", func) # 注意前面改成了win,只需要写出按键名即可
19 
20 
21 win.mainloop()

#!/usr/bin/python

32、组合按钮事件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 
 8 # <Control-Alt-a>
 9 # <Shift-Up>
10 # 只是control alt不行
11 
12 label = tkinter.Label(win, text="*********", bg="red")
13 # 设置焦点
14 label.focus_set()
15 label.pack()
16 
17 def func(event):
18     print("event.char=", event.char)
19     print("event.keycode=", event.keycode)
20 
21 
22 win.bind("<Control-Alt-a>", func) # 注意前面改成了win,只需要写出按键名即可
23 
24 
25 win.mainloop()

 

The Menu widget is used to provide various commands to a user. These commands are contained inside Menubutton.

9、Radiobutton单选框

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 def updata():
 8     print(r.get())
 9 
10 # 绑定变量,一组单选框要绑定同一个变量,就能区分出单选框了
11 r = tkinter.IntVar()
12 
13 radio1 = tkinter.Radiobutton(win, text="one", value=1, variable=r, command=updata)
14 radio1.pack()
15 radio2 = tkinter.Radiobutton(win, text="two", value=2, variable=r, command=updata)
16 radio2.pack()
17 
18 win.mainloop()

place()方法-那么些的几哪个地点理器组织放置在贰个特定的岗位,在他们的父widget零器件.

13、Listbox四

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 # MULTIPLE支持多选
 8 lb = tkinter.Listbox(win, selectmode=tkinter.MULTIPLE)
 9 lb.pack()
10 
11 for item in ["good", "nice", "handsome", "aaa", "bbb", "ccc", "ddd"]:
12     # 按顺序添加
13     lb.insert(tkinter.END, item)
14 
15 win.mainloop()

30、响应特殊开关事件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 # <Shift_L>  只响应左侧的shift键
 8 # <Shift_R>
 9 # <F5>
10 # <Return>  也就是回车键
11 # <BackSpace>  返回,也就是退格键
12 
13 label = tkinter.Label(win, text="*********", bg="red")
14 # 设置焦点
15 label.focus_set()
16 label.pack()
17 
18 def func(event):
19     print("event.char=", event.char)
20     print("event.keycode=", event.keycode)
21 
22 
23 label.bind("<Shift_L>", func)
24 
25 
26 win.mainloop()

正式属性:

5、点击按钮输出输入框中的内容

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 import tkinter
 4 
 5 win = tkinter.Tk()
 6 win.title("yudanqu")
 7 win.geometry("400x400 200 50")
 8 
 9 def showinfo():
10     # 获取输入的内容
11     print(entry.get())
12 
13 entry = tkinter.Entry(win)
14 entry.pack()
15 
16 button = tkinter.Button(win, text="按钮", command=showinfo)
17 button.pack()
18 
19 win.mainloop()

tkMessageBox

3、Button控件

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 
 4 import tkinter
 5 
 6 
 7 def func():
 8     print("aaaaaaaaaaaaaaaaaaaaaaa")
 9 
10 
11 win = tkinter.Tk()
12 win.title("yudanqu")
13 win.geometry("400x400 200 50")
14 
15 
16 # 创建按钮
17 button1 = tkinter.Button(win, text="按钮", command=func, width=10, height=10)
18 button1.pack()
19 
20 button2 = tkinter.Button(win, text="按钮", command=lambda: print("bbbbbbbbbbbb"))
21 button2.pack()
22 
23 button3 = tkinter.Button(win, text="退出", command=win.quit)
24 button3.pack()
25 
26 win.mainloop()

Relief styles

25、鼠标点击事件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 
 8 def func(event):
 9     print(event.x, event.y)
10 
11 # <Button-1>  鼠标左键
12 # <Button-2>  鼠标滚轮
13 # <Button-1>  鼠标右键
14 # <Double-Button-1>  鼠标双击左键
15 # <Triple-Button-1>  鼠标三击左键
16 
17 button1 = tkinter.Button(win, text="leftmouse button")
18 # bind 给控件绑定数据(参数一是绑定的事件,参数二是触发事件的函数)
19 button1.bind("<Button-1>", func)
20 button1.pack()
21 
22 win.mainloop()

The Message widget is used to display multiline text fields for accepting values from a user.

15、Spinbox控件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 '''
 8 数值范围控件
 9 '''
10 
11 # 绑定变量
12 v = tkinter.StringVar()
13 
14 def updata():
15     print(v.get())
16 
17 # increment:步长,默认为1
18 # values要输入一个元组 最好不要和from和to同时使用,而且步长也没用
19 # command 只要值改变就会执行updata方法
20 sp = tkinter.Spinbox(win, from_=0, to=100, increment=5,
21                      textvariable=v, command=updata)
22 # sp = tkinter.Spinbox(win, values=(0,2,4,6,8))
23 sp.pack()
24 
25 # 赋值
26 v.set(20)
27 # 取值
28 print(v.get())
29 
30 win.mainloop()

Tkinter的构件有一定几何样子的田管艺术,整个小构件父控件区域协会的目标。 Tkinter的公然以下几何首席营业官类:包装,网格,地方.

  Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口.Tk和Tkinter可以在好多的Unix平台下利用,相符能够应用在Windows和Macintosh系统里.Tk8.0的一而再版本能够兑现本地窗口作风,并好好地运转在大多阳台北。

Checkbutton

21、树状数据

 1 import tkinter
 2 from tkinter import ttk
 3 
 4 win = tkinter.Tk()
 5 win.title("yudanqu")
 6 win.geometry("400x400 200 50")
 7 
 8 tree = ttk.Treeview(win)
 9 tree.pack()
10 
11 # 添加一级树枝
12 treeF1 = tree.insert("",0,"中国",text= "中国Chi", values=("F1"))
13 treeF2 = tree.insert("",1,"美国",text= "美国USA", values=("F1"))
14 treeF3 = tree.insert("",2,"英国",text= "英国UK", values=("F1"))
15 
16 # 二级树枝
17 treeF1_1 = tree.insert(treeF1,0,"黑龙江",text="中国黑龙江",values=("F1_1"))
18 treeF1_2 = tree.insert(treeF1,1,"吉林",text="中国吉林",values=("F1_2"))
19 treeF1_3 = tree.insert(treeF1,2,"辽宁",text="中国辽宁",values=("F1_3"))
20 
21 treeF2_1 = tree.insert(treeF2,0,"aaa",text="aaaa",values=("F2_1"))
22 treeF2_2 = tree.insert(treeF2,1,"bbb",text="bbbb",values=("F2_2"))
23 treeF2_3 = tree.insert(treeF2,2,"ccc",text="cccc",values=("F2_3"))
24 
25 # 三级树枝
26 treeF1_1_1 = tree.insert(treeF1_1,0,"哈尔滨",text="黑龙江哈尔滨")
27 treeF1_1_2 = tree.insert(treeF1_1,1,"五常",text="黑龙江五常")
28 
29 win.mainloop()

Spinbox

目录:
1、简单实例
2、Label控件
3、Button控件
4、Entry控件
5、点击按钮输出输入框中的内容
6、Text控件
7、带滚动条的Text
8、Checkbutton多选框控件
9、Radiobutton单选框
10、Listbox控件一
11、Listbox控件二
12、Listbox控件三
13、Listbox四
14、Scale控件
15、Spinbox控件
16、Menu顶层菜单
17、Menu鼠标右键菜单
18、Combobox下拉控件
19、Frame控件
20、表格数据
21、树状数据
22、绝对布局
23、相对布局
24、表格布局
25、鼠标点击事件
26、鼠标移动事件
27、鼠标释放事件
28、进入和离开事件
29、响应所有按键的事件
30、响应特殊按键事件
31、指定按键事件
32、组合按键事件

这段时间有15种Tkinter的零器件。大家建议那些零部件以至三个简易的牵线,在下边包车型客车表:

18、Combobox下拉控件

 1 import tkinter
 2 from tkinter import ttk
 3 
 4 win = tkinter.Tk()
 5 win.title("yudanqu")
 6 win.geometry("400x400 200 50")
 7 
 8 # 绑定变量
 9 cv = tkinter.StringVar()
10 
11 com = ttk.Combobox(win, textvariable=cv)
12 com.pack()
13 
14 # 设置下拉数据
15 com["value"] = ("黑龙江", "吉林", "辽宁")
16 
17 # 设置默认值
18 com.current(0)
19 
20 # 绑定事件
21 
22 def func(event):
23     print(com.get())
24     print(cv.get())
25 com.bind("<<ComboboxSelected>>", func)
26 
27 win.mainloop()

4、Entry控件

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 
 4 import tkinter
 5 
 6 win = tkinter.Tk()
 7 win.title("yudanqu")
 8 win.geometry("400x400 200 50")
 9 
10 '''
11 Entry:输入控件,用于显示简单的文本内容
12 '''
13 
14 # 密文显示
15 entry1 = tkinter.Entry(win, show="*") # show="*" 可以表示输入密码
16 entry1.pack()
17 
18 # 绑定变量
19 e = tkinter.Variable()
20 
21 entry2 = tkinter.Entry(win, textvariable=e)
22 entry2.pack()
23 
24 # e就代表输入框这个对象
25 # 设置值
26 e.set("wewewewewewe")
27 # 取值
28 print(e.get())
29 print(entry2.get())
30 
31 win.mainloop()

23、绝对布局

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 label1 = tkinter.Label(win, text="good", bg="blue")
 8 label2 = tkinter.Label(win, text="nice", bg="red")
 9 label3 = tkinter.Label(win, text="cool", bg="green")
10 
11 # 相对布局,窗体改变对控件有影响
12 label1.pack(fill=tkinter.Y, side=tkinter.LEFT)
13 label2.pack(fill=tkinter.X, side=tkinter.TOP)
14 label3.pack()
15 
16 win.mainloop()

JPython:JPython的是一个用来Java的Python端口,

7、带滚动条的Text

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 
 4 
 5 import tkinter
 6 
 7 win = tkinter.Tk()
 8 win.title("yudanqu")
 9 # win.geometry("400x400 200 50")
10 
11 '''
12 文本控件:用于显示多行文本
13 '''
14 
15 # 创建滚动条
16 scroll = tkinter.Scrollbar()
17 
18 text = tkinter.Text(win, width=30, height=10)
19 # side放到窗体的哪一侧,  fill填充
20 scroll.pack(side=tkinter.RIGHT, fill=tkinter.Y)
21 text.pack(side=tkinter.LEFT, fill=tkinter.Y)
22 # 关联
23 scroll.config(command=text.yview)
24 text.config(yscrollcommand=scroll.set)
25 
26 text.pack()
27 
28 str = '''盖闻天地之数,有十二万九千六百岁为一元。将一元分为十二会,乃子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥之十二支也。每会该一万八百岁。且就一日而论:子时得阳气,而丑则鸡鸣;寅不通光,而卯则日出;辰时食后,而巳则挨排;日午天中,而未则西蹉;申时晡而日落酉;戌黄昏而人定亥。譬于大数,若到戌会之终,则天地昏蒙而万物否矣。再去五千四百岁,交亥会之初,则当黑暗,而两间人物俱无矣,故曰混沌。又五千四百岁,亥会将终,贞下起元,近子之会,而复逐渐开明。邵康节曰:“冬至子之半,天心无改移。一阳初动处,万物未生时。”到此,天始有根。再五千四百岁,正当子会,轻清上腾,有日,有月,有星,有辰。日、月、星、辰,谓之四象。故曰,天开于子。又经五千四百岁,子会将终,近丑之会,而逐渐坚实。易曰:“大哉乾元!至哉坤元!万物资生,乃顺承天。”至此,地始凝结。再五千四百岁,正当丑会,重浊下凝,有水,有火,有山,有石,有土。水、火、山、石、土谓之五形。故曰,地辟于丑。又经五千四百岁,丑会终而寅会之初,发生万物。'''
29 
30 text.insert(tkinter.INSERT, str)
31 
32 win.mainloop()

Message

27、鼠标释放事件

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 # <ButtonRelease-1> 释放鼠标左键
 8 # <ButtonRelease-2> 释放鼠标中键
 9 # <ButtonRelease-3> 释放鼠标右键
10 
11 
12 label = tkinter.Label(win, text="*********", bg="red")
13 label.pack()
14 
15 def func(event):
16     print(event.x, event.y)
17 
18 label.bind("<ButtonRelease-1>", func)
19 
20 win.mainloop()

Dimensions

1、轻松实例

  上边的代码是创造出三个窗口,其余的操作就在这里个平台上海展览中心开。试行之后会在桌面弹出贰个窗口,窗口的标题正是代码中安装的win.title。这里说一下,小编利用的本子是python3.6。后边的原委尽量按顺序看,后边的控件只怕用到前边写到的东西。

 1 #!/usr/bin/env python
 2 # -*- coding:utf-8 -*-
 3 
 4 import tkinter
 5 
 6 
 7 # 创建主窗口
 8 win = tkinter.Tk()
 9 # 设置标题
10 win.title("yudanqu")
11 # 设置大小和位置
12 win.geometry("400x400 200 50")
13 
14 # 进入消息循环,可以写控件
15 
16 win.mainloop()

TkInter是职业的Python GUI库。的Python与Tkinter的整合提供了三个飞跃和轻巧的措施来创设GUI应用程序。 Tkinter的提供了一个苍劲的面向对象的接口Tk的GUI工具包.

 11、Listbox控件二

 1 import tkinter
 2 
 3 win = tkinter.Tk()
 4 win.title("yudanqu")
 5 win.geometry("400x400 200 50")
 6 
 7 # 绑定变量
 8 lbv = tkinter.StringVar()
 9 
10 # 与BORWSE相似,但是不支持鼠标按下后移动选中位置
11 lb = tkinter.Listbox(win, selectmode=tkinter.SINGLE, listvariable=lbv)
12 lb.pack()
13 
14 for item in ["good", "nice", "handsome", "aaa", "bbb", "ccc", "ddd"]:
15     # 按顺序添加
16     lb.insert(tkinter.END, item)
17 
18 # 打印当前列表中的选型
19 print(lbv.get())
20 
21 # 设置选项
22 # lbv.set(("1","2","3"))
23 
24 # 绑定事件
25 def myprint(event):
26     # print(lb.curselection()) # 返回下标
27     print(lb.get(lb.curselection())) # 返回值
28 lb.bind("<Double-Button-1>", myprint)
29 
30 win.mainloop()

有大多可用它,笔者那边未有列出的其余接口。您能够由此网络找到它们.


The Button widget is used to display buttons in your application.

Text


pack()方法- 这一个的几哪个地方理器协会以前,将其放置在他们的父widget块零器件.

The Label widget is used to provide a single-line caption for other widgets. It can also contain images.


Toplevel

The Text widget is used to display text in multiple lines.


The Radiobutton widget is used to display a number of options as radio buttons. The user can select only one option at a time.


Canvas

grid()方法- 那的几哪个地点理器组织表状结构中的小零部件的父零件.

Button  


Bitmaps

Listbox

应用Tkinter创设二个GUI应用程序是风度翩翩件轻巧的事。全数你供给做的是施行以下步骤:

The Menubutton widget is used to display menus in your application.

The Scrollbar widget is used to add scrolling capability to various widgets, such as list boxes.

Fonts


那使得Python脚本在地头机械上的无缝接入到Java类库http://www.jython.org.

Python提供了花费图形顾客分界面(GUI卡塔尔的各样方案。下边列出最重大如下:

分分快三计划 28

Colors


The Frame widget is used as a container widget to organize other widgets.

Tkinter的提供各个控件,如按键,标签和文本框,二个GUI应用程序中选用。那一个控件日常被叫作构件.

Tkinter的部件:

Anchors


成立GUI应用程序的主窗口.

top.mainloop()

例子:

Cursors

wxPython:那是多少个开源的Python接口的wxWindowshttp://wxpython.org.

导入Tkinter模块.


# Code to add widgets will go here...

Tkinter 编程:

top = Tkinter.Tk()

The Scale widget is used to provide a slider widget.

Menubutton



几哪个地点理:

踏向主事件循环的由客户触发各样事件响应.

The Toplevel widget is used to provide a separate window container.

OperatorDescription


Radiobutton

Tkinter:Tkinter的是Tk的GUI工具包,与Python附带的Python接口。在本教程中大家将看看这么些选项.


The Checkbutton widget is used to display a number of options as checkboxes. The user can select multiple options at a time.

The Listbox widget is used to provide a list of options to a user.

The Entry widget is used to display a single-line text field for accepting values from a user.

The Spinbox widget is a variant of the standard Tkinter Entry widget, which can be used to select from a fixed number of values.

Frame

This module is used to display message boxes in your applications.

本文由分分快三计划发布,转载请注明来源

关键词: 分分快三计划 python Linux+P...