import tkinter
1.使用tkinter模块前 一般先要建立一个tkinter的对象
    例: window = tkinter.TK()
 
2.建立完对象设置好窗口属性以及所有功能之后就要把窗口加载到消息循环中(程序的最后一句代码)
    例: window.mainloop()
 
3.设置窗口的属性
    窗口的标题: window.title("标题的内容") 
    窗口的大小: window.geometry("800x600+300+0")  #800是宽 600是高 (300.0)是窗口的初始坐标位置
import tkinter
win = tkinter.Tk() # 构造函数
win.title("你好 ")
win.geometry("800x600+300+0") #800是宽 600是高 (300.0)是窗口的初始坐标位置
win.mainloop() # 进入消息循环
 
4.设置窗口按钮
   使用的的对象类tkinter.Button()
   button.pack() # 包装加载此按钮(如果按钮没有设置大小,则默认安装文件字数设置)
    button.place(x=0,y=0) # 可以布局按钮的位置
import tkinter
import os
def go():
os.system("notepad")
win = tkinter.Tk() # 构造函数
win.title("你好 ")
win.geometry("800x600+300+0") #800是宽 600是高 (300.0)是窗口的初始坐标位置 # 设置按钮
button = tkinter.Button(win,text="打开记事本",command =go)
# text 按钮按键内容 command 按钮要控制的行为 width 宽 heigth 高
button2= tkinter.Button(win,text="打开记事",
command =lambda :print("holle "),
anchor = tkinter.CENTER, # 位置
bg = "blue", # 背景颜色
fg = "red", # 字体颜色
width = 5,
height=20)
# button.pack() # 包装加载此按钮(如果按钮没有设置大小,则默认安装文件上的的字数大小加载)
button.place(x=0,y=0) # 可以布局按钮的位置
button2.pack() win.mainloop() # 进入消息循环
5.设置窗口标签
   使用的的对象类tkinter.Label()

import tkinter
win = tkinter.Tk()
win.geometry("800x800+300+100")
# 标签 label
label = tkinter.Label(win,text="hello python",height=10,width=10)
label1 = tkinter.Label(win, # 父窗体
text="hello python", # 文本
# anchor = tkinter.CENTER, # 字体居中位置
bg = "blue", # 背景颜色
fg = "red", # 字体颜色
height=100, # 高
width=100) #宽
# text 标签内容 width 宽 heigth 高
label.pack() # 包装加载此按钮(如果按钮没有设置大小,则默认安装文件字数设置)
label1.pack()
win.mainloop()

   补充:对于按钮和标签的位置参数补充

anchor = tkinter.CENTER,  # 字体居中位置
anchor = tkinter.S, # 字体在下
anchor = tkinter.N, # 字体在上
anchor = tkinter.E, # 字体在右
anchor = tkinter.W, # 字体在左
sw 下左 se 下右 nw 上左 ne上右
上北下南 左西右东 east 东 north 北 south 南 west 西
6.设置输入框
   使用的的对象类tkinter.Entry()

import tkinter
win = tkinter.Tk()
entey = tkinter.Entry(win,
show="", # 显示输入内容 如果没有设置则是输入的实际内容
# 如果是"*"也可以是其他设置的符号 这输入的内容被隐藏显示,显示的是 ***
width=50, # 宽
bg="red", # 背景颜色
fg="blue", # 字体颜色
)
entey.pack()
win.mainloop()
7.设置输出框
   使用的的对象类tkinter.Listbox()

import tkinter
win = tkinter.Tk()
mylist = tkinter.Listbox(win, width=100,
height=20,
bg="red", # 背景颜色
fg="blue", # 字体颜色
)
mylist.pack() for item in range(1,10):
mylist.insert(tkinter.END,#尾部插入
item)
win.mainloop()
8.设置组合框
   
import tkinter
from tkinter import ttk def go(*tuple):
# print(comboxlist.get()) # comboxlist.get()获取在选择控件里面选中的值
# print(type(comboxlist.get()))
n = comboxlist.get()
print(int(n)+int(n)) win = tkinter.Tk() # 构造窗体
# 第一步
comvalue = tkinter.StringVar() # 窗体自带文本,新建一个值
# 构建窗体
comboxlist = ttk.Combobox(win,
textvariable=comvalue, # 初始化
# values=("1", "2", "3", "4","5"),
) comboxlist["values"] = ("1", "2", "3", "4") # 可以通过这种方法加入属性
comboxlist.current(0) # 选择第一个
comboxlist.pack() # 包装加载
comboxlist.bind("<<ComboboxSelected>>", go) # 绑定组合框事件
win.mainloop()

9. 设置按钮和输入框的组合输入处理

import tkinter
import os def go():
print(entry.get()) # 返回输入的文本
if entry.get() == "记事本":
os.system("notepad")
win = tkinter.Tk()
entry = tkinter.Entry(win) # 相当于一个 input
# entry.pack()
entry.place(x=0,y=0) # 可以使用place 进行布局 button = tkinter.Button(win,text="搜索",command=go)
button.place(x=150,y=0) # 可以使用place 进行布局
# button.pack()
win.mainloop() # 进入消息循环

10.图形文本的编辑处理

import tkinter
win = tkinter.Tk()
text = tkinter.Text(win,
bg="blue",
fg="red"
) # 文本编译器
text.insert(tkinter.INSERT,"你好 你好 hello、\r\n")
text.insert(tkinter.INSERT,"你好 你好 hello、\r\n")
text.insert(tkinter.INSERT,"你好 你好 hello")
text.insert(tkinter.INSERT,"\r\n")
text.insert(tkinter.INSERT,"你好 你好 hello")
text.pack()
win.mainloop()

11.表格数据显示

import tkinter
from tkinter import ttk
win = tkinter.Tk()
win.geometry("800x300+100+100")
tree = ttk.Treeview(win) # 表格
tree["columns"] = ("姓名","年龄","身高")
tree.column("姓名",width=100) # 表示列,不显示
tree.column("年龄",width=100)
tree.column("身高",width=100) tree.heading("姓名",text="姓名 - name") # 显示表头
tree.heading("年龄",text="年龄 - age")
tree.heading("身高",text="身高 - tall") tree.insert("",0,text="line1",values=("小明",1,2)) # 插入的行数
tree.insert("",3,text="line1",values=("小明",3,3))
tree.insert("",2,text="line1",values=("小明",2,2))
tree.insert("",1,text="line1",values=("小明",1,1)) myidx=tree.insert("",4,"中国",text="中国")
myidx1=tree.insert(myidx,0,"陕西",text="中国陕西",values=("小明",1,2))
myidx2=tree.insert(myidx,1,"江苏",text="中国江苏",values=(""))
myidx12=tree.insert(myidx1,0,"陕西渭南",text="陕西渭南",values=(""))
# tree.pack()
tree.place(x=0,y=0)
win.mainloop()

12.树状图形划显示

import tkinter
from tkinter import ttk # 导入内部包 win = tkinter.Tk()
tree=ttk.Treeview(win)
# "" 表示一开始的根
# values = ("1")的值在树状图中不显示
myidx=tree.insert("",0,"中国",text="中国", values=(""))
myidx1=tree.insert(myidx,0,"陕西",text="中国陕西",values=(""))
myidx2=tree.insert(myidx,1,"江苏",text="中国江苏",values=(""))
myidx12=tree.insert(myidx1,0,"陕西渭南",text="陕西渭南",values=("")) myidy=tree.insert("",1,"美国",text="美国")
myidy1=tree.insert(myidy,0,"纽约",text="中国陕西")
myidy2=tree.insert(myidy1,0,"皇后区",text="陕西渭南") tree.pack()
win.mainloop()
   
 
 

TK图形界面的更多相关文章

  1. Python图形界面Tk

    最近在学习Python,在使用Tkinter做图形界面时遇到了几个小问题,网上查了一下,在Python2.x导入的是Tkinter,Python3则是tkinter.而且导入的simpledialog ...

  2. python图形界面(GUI)设计

    不要问我为什么要用 python 来做这种事,我回到“高兴咋地”也不是不可以,总之好奇有没有好的解决方案.逛了一圈下来,总体上来说,python 图形界面有以下几个可行度比较高的解决方案. 1. py ...

  3. 关于web2py外网访问,图形界面不显示等问题的解决办法

    首先系统版本是ubuntu 15.04,系统默认安装了两个版本的python, sudo python web2py.py 默认会调用python2.7版本来执行 会提示 pydo@planpls:/ ...

  4. python_adb 图形界面获取app测试数据,并展示部分测试报告v1.0版本

    想到平时想用adb 我就忍不住去翻开笔记,脑子记不住,不好使,不知道大家有没有这个想法呢,不管你有没有,反正我有了,ttm,太烦人了,于是乎,我就开始给自己写个需求文档, 这就是我写的,产品需求,合理 ...

  5. python 图形界面开发

    用python来开发图形界面,确实不是很方便,没有c#,Java,甚至VB来得容易.几个控件拖拽,然后响应事件. 用python写脚本,或者web service来处理一般工作,绰绰有余.但有的时候, ...

  6. Day-16: 图形界面

    Python支持多种图形界面,有:第三方库有Tk.wxWidgets.Qt.GTK等. Python自带的库是支持Tk的Tkinter,无需安装任何安装包,就可以直接使用. 在Python中使用函数调 ...

  7. phython编写图形界面

    Python支持多种图形界面的第三方库,包括: Tk wxWidgets Qt GTK 等等. 但是Python自带的库是支持Tk的Tkinter,使用Tkinter,无需安装任何包,就可以直接使用. ...

  8. 【Python】图形界面

    # [[图形界面]]'''Python支持多种图形界面的第三方库,包括TkwxWidgetsQtGTK但是Python自带的库是支持Tk的Tkinter,无需安装任何包,可直接使用.''' #[Tki ...

  9. Python 图形界面(GUI)设计

    不要问我为什么要用 Python 来做这种事,我回到“高兴咋地”也不是不可以,总之好奇有没有好的解决方案.逛了一圈下来,总体上来说,Python 图形界面有以下几个可行度比较高的解决方案. 1. py ...

随机推荐

  1. handlerAdapter与方法调用(参数的解析)

    前提:当找到handler以后,那么就要让handler发挥作用,这个时候handlerAdapter就派上用场了 这里面比较复杂就是requestMappingHandlerAdapter了,其他的 ...

  2. 脱壳0-FSG壳-详细流程

    目录 @ 1 拿到当前加壳程序,用exeinfo/PeID 看一下信息 可以看出是很老的壳FSG. 分析: ​ Entry Point : 000000154,熟悉PE结构的知道,入口点(代码)揉进P ...

  3. 【iOS】判断苹果的设备是哪种

    有时候需要判断苹果的设备是 iPhone 还是 iPad 等其他设备,示例代码如下: if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUs ...

  4. How to extract WeChat chat messages from a smartphone running Android 7.x or above

    A friend of mine she was frustarted in extracting WeChat chat messages from suspect's smartphone run ...

  5. 自定义SWT控件六之自定义Tab

    6.自定义tab 本章节提供的自定义tab 分为两类 tab上带删除按钮和添加按钮,可删除tab和添加tab tab不可删除和添加 6.1 不可删除tab package com.view.contr ...

  6. 前端面试 js 你有多了解call,apply,bind?

    函数原型链中的 apply,call 和 bind 方法是 JavaScript 中相当重要的概念,与 this 关键字密切相关,相当一部分人对它们的理解还是比较浅显,所谓js基础扎实,绕不开这些基础 ...

  7. Drawable 使用详解

    极力推荐文章:欢迎收藏 Android 干货分享 阅读五分钟,每日十点,和您一起终身学习,这里是程序员Android Drawable 是Android 中图像显示的常用方法. 概念:Drawable ...

  8. LR(1)语法分析器生成器(生成Action表和Goto表)java实现(一)

    序言 : 在看过<自己实现编译器链接器>源码之后,最近在看<编译器设计>,但感觉伪代码还是有点太浮空.没有掌握的感觉,也因为内网几乎没有LR(1)语法分析器生成器的内容,于是我 ...

  9. abap简单实现form递归

    需求:根据物料号查询下层物料清单 DATA LV_MATNR LIKE ZMARA_TEST-MATNR VALUE '000000000000000001'. DATA: LT_MAT LIKE T ...

  10. windows下通过idea连接hadoop和spark集群

    ###windows下链接hadoop集群 1.假如在linux机器上已经搭建好hadoop集群 2.在windows上把hadoop的压缩包解压到一个没有空格的目录下,比如是D盘根目录 3.配置环境 ...