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. 1-10super和this关键字

    什么是super? super代表的是当前子类对象中的父类型特征. 什么时候使用super? 子类和父类中都有某个数据,例如,子类和父类中都有name这个属性.如果要再子类中访问父类中的name属性, ...

  2. windows密码长度最小值改不了

    控制台输入gpedit.msc或者在“开始→控制面板→管理工具→本地安全策略→账户策略→密码策略→密码长度最小值”中修改不了,是灰色的,不让修改 用命令行可以修改开始-->运行-->输入& ...

  3. C++ <string> 里面的size_type

    string::size_type string的 str.size() 返回值是一个unsigned,实际上返回的是size_type类型的值. string类和其他的大多数标准库类型都定义了几套配 ...

  4. SQL 列拼接使用

    一个产品收藏表 Collection , 把该产品被收藏的人拼接在一列中如下: SQL SERVER SELECT ProjectID, UserIDs = ','+(STUFF((SELECT ', ...

  5. Java_静态变量

    class c1c { private static int num = 0; private static double pi = 3.14; private double radius; priv ...

  6. jQuery Validate自定义各种验证方法(转)

    一.封装自定义验证方法-validate-methods.js /***************************************************************** j ...

  7. iOS infoq资料架构设计漫谈

    http://www.infoq.com/cn/ios/?utm_source=infoq&utm_medium=header_graybar&utm_campaign=topic_c ...

  8. AI学习一:环境安装

    对于Python开发用户来讲,PIP安装软件包是家常便饭.但国外的源下载速度实在太慢,浪费时间.而且经常出现下载后安装出错问题.所以把PIP安装源替换成国内镜像,可以大幅提升下载速度,还可以提高安装成 ...

  9. 【HEVC简介】CTU、CU、PU、TU结构

     参考文献:见<High Efficiency Video Coding (HEVC)>Block Structures and Parallelism Features in HEVC章 ...

  10. C# 图片打印杂谈

    日常开头水一下,看了下上次博客,一年零八天了,啧啧,奢侈. 最近这个工作挺满意的,是我想要的发展方向,后续要做机器学习,现在得先把公司之前堆积的问题解决了. 谈人生到此结束,还是说正题吧.(感觉这标题 ...