图形界面,也就是常说的,GUI,指用图形显示用户界面

python提供了集中GUI开发的库,现在我是用的是  Tkinter

Python3.x 版本使用的库名为 tkinter,即首写字母 T 为小写。

Tkinter 组件

Tkinter的提供各种控件,如按钮,标签和文本框,一个GUI应用程序中使用。这些控件通常被称为控件或者部件。

目前有15种Tkinter的部件。(百度)关于thinter详情看如下:

 http://www.360doc.com/content/12/0922/02/3234041_237501315.shtml


引用tkinter,引用有几种方法,如下

一:这种方法也只能用以下的方法通过,其他的不能通过

from  tkinter import *
root = Tk()
root.title("hello world")
root.mainloop()

python的thinter_python

 


     

python的thinter_控件_02

二:import  tkinter 这种方法也能用这种通过,上面的也不行

# -*- coding: UTF-8 -*-
import tkinter
root = tkinter.Tk()



python的thinter_python的thinter_03


三:对于Tkinter的导入,更标准的方法是 import Tkinter as tk

相关知识

  • title: 设置窗口标题
  •  设置窗口大小   
  • .resizable(False,False)
    re表示重新 siz表示size/大小 able能够
    串起来就是是否能够重新设置大小,对应的是窗口的宽度和高度是否能够伸缩调整。True则可以,False不可以。
  • (2)Window.minsize(300,600)
    min表示最小 size表示大小
    串起来就是最小的大小,也就是如果上面设置了宽或高可以调整,那么宽或高最小能调整到哪里呢?就是用这个设置了。Window.maxsize(600,1200)这是宽度和高度可以调整的最大值
  • (3)我们想启动的时候调整窗口的位置,怎么办呢?可以用这个了:
    Window.geometry("300x600+120+100")
    300x600表示窗口的宽度与高度 与第二节的 ['width']/['height'] 属性作用相同
    120+100表示在桌面(120,100)这个坐标放置窗口(坐标为窗口的左上角),在windows系统下我们可以通过pywin32库调用相应api获取桌面坐标值,达到窗口放到桌面中心位置的效果。
  • resizable():设置窗口是否可以变化长 宽
# -*- coding: UTF-8 -*-
from tkinter import *

root = Tk()
#标题
root.title("hello world")
#大小
root.minsize(300,300)
root.resizable(width=False,height=True)
root.mainloop()

几个控件的用法

1:Label


用法

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

属性

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


# -*- coding: UTF-8 -*-
from tkinter import *

root = Tk()
#标题
root.title("hello world")
#大小
root.minsize(300,300)
root.resizable(width=True,height=True)

w = Label(root,text="hello world",bg="red",font=(12))
w.pack(side=LEFT)
root.mainloop()



2 :Frame


说明

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

用法

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


3: Entry

说明

  创建单行文本框

用法

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

4 :Text


说明

  向该空间内输入文本

用法

  t = Text(根对象)

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

  删除:t.delete(mark1, mark2)

  其中,mark可以是行号,或者特殊标识,例如

  • INSERT:光标的插入点CURRENT:鼠标的当前位置所对应的字符位置
  • END:这个Textbuffer的最后一个字符
  • SEL_FIRST:选中文本域的第一个字符,如果没有选中区域则会引发异常
  • SEL_LAST:选中文本域的最后一个字符,如果没有选中区域则会引发 异常

5: 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