import Tkinter
root=Tkinter.Tk()
label=Tkinter.Label(root,text='hello ,python')
label.pack()      #将LABEL组件添加到底框上
button1=Tkinter.Button(root,text='BUTTON1')
button1.pack(side=Tkinter.LEFT)
button2=Tkinter.Button(root,text='BUTTON2')
button2.pack(side=Tkinter.RIGHT)
root.mainloop()
#默认 pack()将向下添加组件。

import Tkinter
root=Tkinter.Tk()
button1=Tkinter.Button(root,anchor=Tkinter.E,height=5,width=40,text='BUTTON1')
button1.pack()
button2=Tkinter.Button(root,text='BUTTON2',bg='blue')
button2.pack()
button3=Tkinter.Button(root,text='BUTTOON3',fg='red')
button3.pack()
button4=Tkinter.Button(root,text='BUTTOON4',state=Tkinter.DISABLED)
button4.pack()

root.mainloop()

import Tkinter

root=Tkinter.Tk()
r=Tkinter.StringVar()
r.set('1')
radio=Tkinter.Radiobutton(root,variable=r,value='1',text='Radio1')
radio.pack()
radio=Tkinter.Radiobutton(root,variable=r,value='2',text='Radio2')
radio.pack()
radio=Tkinter.Radiobutton(root,variable=r,value='3',text='Radio3')
radio.pack()
radio=Tkinter.Radiobutton(root,variable=r,value='4',text='Radio4')
radio.pack()
radio=Tkinter.Radiobutton(root,variable=r,value='5',text='Radio5')
radio.pack()

c=Tkinter.IntVar()
c.set(1)
check=Tkinter.Checkbutton(root,text='check button',variable=c,onvalue=1,offvalue=2)
check.pack()

root.mainloop()
print c.get()
print r.get()

import Tkinter
class MyButton:
    def __init__(self,root,canvas,label,type):
        self.root=root
        self.canvas=canvas
        self.label=label
        if type==0:
           button=Tkinter.Button(root,text='DrawLine',command=self.DrawLine)
        elif type==1:
           button=Tkinter.Button(root,text='DrawArc',command=self.DrawArc)
        elif type==2:
           button=Tkinter.Button(root,text='DrawRect',command=self.DrawRect)
        else:
           button=Tkinter.Button(root,text='DrawOval',command=self.DrawOval)
        button.pack(side='left')
    def DrawLine(self):
        self.label.text.set('Draw Line')
        self.canvas.SetStatus(0)
    def DrawArc(self):
        self.label.text.set('Draw Arc')
        self.canvas.SetStatus(1)
    def DrawRect(self):
        self.label.text.set('Draw Rect')
        self.canvas.SetStatus(2)
    def DrawOval(self):
        self.label.text.set('Draw Oval')
        self.canvas.SetStatus(3)
class MyCanvas:
    def __init__(self,root):
        self.status=0
        self.draw=0
        self.root=root
       self.canvas=Tkinter.Canvas(root,bg='white',width=600,height=480)
        self.canvas.pack()
        self.canvas.bind('<ButtonRelease-1>',self.Draw)
        self.canvas.bind('<Button-2>',self.Exit)
        self.canvas.bind('<Button-3>',self.Del)
        self.canvas.bind_all('<Delete>',self.Del)
        self.canvas.bind_all('<KeyPress-d>',self.Del)
        self.canvas.bind_all('<KeyPress-e>',self.Exit)
    def Draw(self,event):
        if self.draw==0:
            self.x=event.x
            self.y=event.y
            self.draw=1
        else:
            if self.status==0:
               self.canvas.create_line(self.x,self.y,event.x,event.y)
                self.draw=0
            elif self.status==1:
               self.canvas.create_arc(self.x,self.y,event.x,event.y)
                self.draw=0
            elif self.status==2:
               self.canvas.create_rectangle(self.x,self.y,event.x,event.y)
                self.draw=0
            else:
               self.canvas.create_oval(self.x,self.y,event.x,event.y)
                self.draw=0
    def Del(self,event):
         items=self.canvas.find_all()
         for item in items:
             self.canvas.delete(item)
    def Exit(self,event):
         self.root.quit()
    def SetStatus(self,status):
         self.status=status
class MyLabel:
    def __init__(self,root):
        self.root=root
        self.canvas=canvas
        self.text=Tkinter.StringVar()
        self.text.set('Draw Line')
       self.label=Tkinter.Label(root,textvariable=self.text,fg='red',width=50)
        self.label.pack(side='left')
root=Tkinter.Tk()
canvas=MyCanvas(root)
label=MyLabel(root)
MyButton(root,canvas,label,0)
MyButton(root,canvas,label,1)
MyButton(root,canvas,label,2)
MyButton(root,canvas,label,3)
root.mainloop()

(转)]PYTHON Tkinter GUI的更多相关文章

  1. python tkinter GUI绘制,以及点击更新显示图片

    tkinter 绘制GUI简单明了,制作一些简单的GUI足够,目前遇到的一个问题是不能同时排列显示多幅图片(目前没找到同时显示解决方法), 退而求其次,改成增加一个update按钮,每次点下按钮自动更 ...

  2. 以Tkinter模块来学习Python实现GUI(图形用户界面)编程

    tk是什么:它是一个图形库,支持多个操作系统,使用tcl语言开发的.tkinter是Python内置的模块, 与tk类似的第三方图形库(GUI库)还有很多,比如:Qt,GTK,wxWidget,wxP ...

  3. python gui tkinter快速入门教程 | python tkinter tutorial

    本文首发于个人博客https://kezunlin.me/post/d5c57f56/,欢迎阅读最新内容! python tkinter tutorial Guide main ui messageb ...

  4. Python:GUI库tkinter(三)

    这一章是对前两章的总结: Python:GUI库tkinter(一) Python:GUI库tkinter(二) 前两章是对控件的介绍,第一章可以知道各控件使用时的具体参数,第二章以具体的例子展示了每 ...

  5. Python:GUI库tkinter(一)

    学习自: Python GUI 编程(Tkinter) | 菜鸟教程 TkDocs_官方文档 1.几个常用的Python GUI库 tkinter:Python的标准Tk GUI工具包的接口. wxP ...

  6. 关于python写GUI桌面应用的一些研究结果

    研究了一下python开发GUI桌面应用的解决方案,研究结果记录如下: EasyGui:控件极为简单,连个基本的grid.list组件都没有,不适合商用,甚至是普通的应用都不行,放弃! Tkinter ...

  7. Python tkinter调整元件在窗口中的位置与几何布局管理

    Tkinter中的GUI总是有一个root窗口,不管你是主动或者别动获得.主窗口就是你的程序开始运行的时候创建的,在主窗口中你通常是放置了你主要的部件.另外,Tkinter脚本可以依据需要创建很多独立 ...

  8. 《Python 数据库 GUI CGI编程》

    本文地址:http://www.cnblogs.com/aiweixiao/p/8390417.html 原文地址 点击关注微信公众号 wenyuqinghuai 1.写在前边 上一次,我们介绍了Py ...

  9. Python的GUI编程(TK)

    TK在大多数 Unix平台.Windows平台和Macintosh系统都是预装好的,TKinter 模块是 Tk GUI 套件的标准Python接口.可实现Python的GUI编程. Tkinter模 ...

随机推荐

  1. Qt之对话框QDialog

    这一节主要讲述对话框类,先讲述两种不同类型的对话框,再介绍Qt提供的几个标准对话框.对应本节的内容,可以在帮助索引中查看 QDialog 和 Dialog Windows 关键字. 一.模态和非模态对 ...

  2. poj1815Friendship(最小割求割边)

    链接 题意为去掉多少个顶点使图不连通,求顶点连通度问题.拆点,构造图,对于<u,v>可以变成<u2,v1> <v2,u1>容量为无穷,<u1,u2>容量 ...

  3. poj2112Optimal Milking(二分+最大流)

    链接 floyd求出牛到机器的最短距离,二分距离,小于当前距离的边容量设为1,求出满容量下的最短距离. EK算法 #include <iostream> #include<cstdi ...

  4. 使用真正的 Redux 和 React-redux

    现在 make-react-redux 工程代码中的 Redux 和 React-redux 都是我们自己写的,现在让我们来使用真正的官方版本的 Redux 和 React-redux. 在工程目录下 ...

  5. 031_spark架构原理

    spark核心组件 driver master worker executor task(只有task是线程) 核心组件的原理图解

  6. DDR SDRAM

    DDR SDRAM(Double Data Rate SDRAM)是一种高速CMOS.动态随机访问存储器, 它采用双倍数据速率结构来完成高速操作.应用在高速信号处理系统中, 需要缓存高速.大量的数据的 ...

  7. Java 利用FTP上传,下载文件,遍历文件目录

    Java实现FTP上传下载文件的工具包有很多,这里我采用Java自带的API,实现FTP上传下载文件.另外JDK1.7以前的版本与其之后版本的API有了较大的改变了. 例如: JDK1.7之前 JDK ...

  8. prevent to do sth 与 prevent sb (from) doing 用法

    prevent to do sth 如: Do not water in before making a turn every time 9 days, make wilting of its bra ...

  9. Android(java)学习笔记178:多媒体之计算机图形表示方式

    1. 多媒体 很多媒体:文字(TextView,简单不讲),图片,声音,视频等等.   2. 图片 计算机如何表示图片的? (1)bmp 高质量保存    256色位图:图片中的每个像素点可以有256 ...

  10. python_使用qrcode生成二维码

    1.功能 使用qrcode生成二维码 2.代码 #生成二维码: import qrcode #根据url生成二维码 def qrcodeWithUrl(url): img = qrcode.make( ...