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. Hdu 5496 Beauty of Sequence (组合数)

    题目链接: Hdu 5496 Beauty of Sequence 题目描述: 一个整数序列,除去连续的相同数字(保留一个)后,序列的和成为完美序列和.问:一个整数序列的所有子序列的完美序列和? 解题 ...

  2. Appium + Python自动化 - 元素定位uiautomatorviewer

    元素定位主要介绍如何使用uiautiomatorviewer,通过定位到页面上的元素,然后进行相应的点击等操作.uiautiomatorviewer是android-sdk自带的一个元素定位工具,非常 ...

  3. 1536 不一样的猜数游戏 dp思维 + 找规律

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1536 首先,要知道值为n的答案,则可以这么去想,知道值为n - 1的答案 ...

  4. C++ thread operator= 右值引用 vector foreach

    这是 thread 的construct定义: default (1) thread() noexcept; initialization (2) template <class Fn, cla ...

  5. 字符串循环右移-c语言

    一个长度为len的字符串,对其循环右移n位 [期望]char str[] = "abcdefg";右移3次后,变成"efgabcd" [思路] 思路1. 如果用 ...

  6. 两个已排序数组的合并-C语言

    最近在纸上写一个已排序数组的合并时,花了超过预期的时间.仔细想想,这种要放到毕业找工作那会两下就出来了,原因还在于工作后对基础没有重视,疏于练习. 说开一点,现在搜索引擎的发达确实给问题的解决带来了便 ...

  7. 如何使用SAP CRM Marketing Survey创建一个市场问卷调查

    使用事务码CRM_SURVEY_SUITE进行编辑.选中Activities这个应用类型,点击新建按钮: 双击Survey的根节点,点击编辑按钮维护Suvey的标题: Survey的正文布局类型(La ...

  8. WEB前端研发工程师编程能力成长之路(2)(转)

    WEB前端研发工程师编程能力成长之路(2)   四.[入微] 最强解决方案.你能够走在需求的前面,将当前需求里有的.没有直接提出来的.现在暂时没有但将来可能有的等等,及前端编程潜规则等各个方方面面都综 ...

  9. linux centos 中目录结构的含义

    文件夹的含义  文件夹路径 含义  / 所有内容的开始   /root 系统管理员目录  /bin 缺省的liunx工具,就是存储命令的目录   环境变量等等 /etc 系统的配置    配置文件的存 ...

  10. ElasticSearch数据库同步插件logstash

    1.下载和elasticsearch 相同版本的logstash. 2.进行解压后,进入bin下,新建一个文件mysql.conf,并输入 input { stdin{ }} output { std ...